随机数数组。 C

时间:2018-12-12 18:51:15

标签: c arrays random-seed

我是C语言的新手,我目前正试图制作一个随机生成的整数数组。我想我差不多了,但希望它的范围是0到1000。另外,我不确定输出的格式。

            srand ( time(NULL) );
            int myArray[5] = {};
            int randomIndex = rand() % 100;
            int myArray[randomIndex];
            printf("Random: %d\n", myArray);

1 个答案:

答案 0 :(得分:1)

您正在正确地生成所需范围内的随机数(非常接近,您说1000,但是您的代码说100 )。

但是,您永远不要将随机值分配给数组中的索引。

因此,如果您要在范围内为大小为5的数组的每个索引分配一个随机数,请 执行以下操作:

for (int i = 0; i < 5; i++) //populate each array index of array of size 5
{
    myArray[i] = rand() % 1000; //assign random number to index in the array
    printf("Random: %d\n", myArray[i]);
}

当前,您的代码在说myArray[<at random index>]什么也不做(可能由编译器完全优化-还会期望编译器抱怨同名变量的重新声明)。

现在,如果您的问题是随机生成数组大小,那么答案是完全不同的...