#include<iostream.h>#include<stdlib.h>#include<time.h>
int get_rand() { srand(time(NULL)); return rand();}
int main() { int i; i = get_rand(); while(i) { cout << i << endl; i = get_rand(); }}//总是生成差不多大小的随机数
为啥我的c++产生随机数的函数不起作用呢?
答案:2 悬赏:0 手机版
解决时间 2021-04-29 23:45
- 提问者网友:藍了天白赴美
- 2021-04-29 00:28
最佳答案
- 五星知识达人网友:往事隔山水
- 2021-04-29 02:02
那是当然啦。你用的是时间做随机数种子,也就是说在1s中之内,你调用了多次生成随机数的函数。而这个随机数是伪随机的,也就是可以重复得到的。而你的随机数种子没变,所以就得到差不多大小的咯。只要你把srand(time(NULL));这句注释掉,你就会看到生成的不是差不多一样的了。
全部回答
- 1楼网友:酒者煙囻
- 2021-04-29 03:31
差不多大小?那就是有变化咯?那不就已经实现伪随机了么?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯