我是C语言的新手,我目前正试图制作一个随机生成的整数数组。我想我差不多了,但希望它的范围是0到1000。另外,我不确定输出的格式。
srand ( time(NULL) );
int myArray[5] = {};
int randomIndex = rand() % 100;
int myArray[randomIndex];
printf("Random: %d\n", myArray);
答案 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>]
什么也不做(可能由编译器完全优化-还会期望编译器抱怨同名变量的重新声明)。
现在,如果您的问题是随机生成数组大小,那么答案是完全不同的...