【发布时间】:2010-11-14 12:15:22
【问题描述】:
可能重复:
why do i always get the same sequence of random numbers with rand() ?
这是我目前的文件:
#include <stdio.h>
int main(void) {
int y;
y = generateRandomNumber();
printf("\nThe number is: %d\n", y);
return 0;
}
int generateRandomNumber(void) {
int x;
x = rand();
return x;
}
我的问题是 rand() 总是返回 41。我在 win 上使用 gcc...不知道在这里做什么。
编辑:使用时间生成随机数是行不通的。它为我提供了一个数字(12000ish),每次我打电话时它都会高一点(大约每秒+3)。这不是我需要的随机性。我该怎么办?
【问题讨论】:
-
查看这个问题,了解它只会随着时间而变化的答案。 stackoverflow.com/questions/1068350/…您只需在程序开始时播种一次。