将随机值分配给C中的数组

时间:2016-10-11 01:41:51

标签: c

    #include <conio.h>
#include <time.h>

int i = 1;



int main()
{
   int nums[20];

   srand(time(NULL));

   while(i < 20){
        nums[i] = rand()% 10;
        i++;

   }
    printf("%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n", nums[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]);
}

当我运行这段代码时,我会得到我期望的值,即10以下,除了2,3和4的值,而且通常不是4是负面的......对我所做的事情有任何帮助错了会被批评

2 个答案:

答案 0 :(得分:3)

nums[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

相当于

nums[20]

由于有趣,-operator

尝试枚举这样的元素(从0开始):

nums[0], nums[1], ..., num[19]

并将i初始化为0

i = 0;

或者,尽管通常看起来很可疑,但请从1开始,然后声明

int nums[21];

答案 1 :(得分:2)

将您的最后一行写为循环:

for(int i = 0; i < 20; i++)
    printf("%d\n", nums[i]);