Tag: srand

如果我没有指定srand(),rand()使用什么种子?

这是代码: #include #include #include int main(void) { int r; int i; for (i = 0; i < 100; i++) { r = rand() % 100 + 1; printf("%d\n", r); } return 0; } 我一直在尝试随机数,但有一天,我忘了把srand()放进去,但是rand()函数仍然可以随机输入一个数字(相同的序列)。 问题是,如果我没有指明它,它会使用什么种子?

在rollDice函数内调用srand(time(NULL))时出现问题

当我在rollDice()函数中使用第一个srand(time(NULL))时它不起作用。 但是当我把它放在主要部分时,它可以工作。 这是为什么? 你能告诉我逻辑吗? #include #include #include int rollDice(void) { return (1+rand()%6) + (1+rand()%6); } int main(void) { int roll; srand(time(NULL)); roll = rollDice(); printf(“You rolled %d.\n”, roll); enum Gamestatus {WON,LOST,CONTINUE}; enum Gamestatus status; while(status==CONTINUE){ printf(“You are rolling again: \n”); printf(“You rolled %d\n”, roll = rollDice()); if (targetPoint==roll){ printf(“You win!”); status=WON; } else if(7==roll){ printf(“You […]

C程序 – srand()

可能重复: 建议初始化srand的方法? 在c中使用srand()时出现以下问题。 我在循环中调用srand(time(NULL)),但循环在1秒之前完成 ,每次调用rand()时我得到相同的值。 我怎么解决这个问题?

srand与rand函数有什么关系?

据我所知,如果不更改种子数,rand()函数会生成每个运行它的相同数字。 这就是srand()的用武之地。时间总是在变化所以我知道你应该将time(null)参数传递给srand。 我的问题是从教程网站下面的代码。 int main() { int i, n=5; time_t t; /* Intializes random number generator */ srand((unsigned) time(&t)); /* Print 5 random numbers from 0 to 50 */ for( i = 0 ; i < n ; i++ ) { printf("%d\n", rand() % 50); } return(0); } 我看不到srand的链接 ((unsigned) time(&t)); 和兰特。 printf(“%d\n”, rand() % […]

如何在time.h中使用函数srand()?

我的程序包含的代码每次执行时都应生成一个随机的正整数。 它只生成一次随机数。 在那之后,当我执行相同的代码时,它给了我相同的值,并且它使我的代码无用。 我开始使用rand函数,然后我将srand()函数与time.h头文件一起使用,但它仍然无法正常工作。 #define size 10 for(i=0;i<size;i++) Arr[i] = rand()%size; 第一次通话(随机): 6 0 2 0 6 7 5 5 8 6 第二次通话(随机但与之前相同): 6 0 2 0 6 7 5 5 8 6 后来我访问了Stack Overflow问题,我读到了srand()函数,我用它作为: #include for(i=0;i<size;i++) Arr[i] = srand(time(NULL)); 第一个电话: -10327 -10327 -10327 -10327 -10327 -10327 -10327 -10327 -10327 -10327 第二个电话: -10326 -10326 -10326 […]