【发布时间】:2014-03-02 00:40:57
【问题描述】:
我有这个代码:
srand(time(NULL));
int n = rand() % 1 + 0;
printf("%d\n", n);
但是,如果我将它 (notsrand(time(NULL))) 放在一个循环中,例如,它只会生成一个 0 序列。
0 到 1 之间的随机数还有另一种实现方式,或者我忘记了什么?
【问题讨论】:
-
rand() % 1 总是 0,因为 rand 返回的总是能被 1 整除
-
顺便说一下+0总是加0,所以这里没有作用。