99问答网
所有问题
用了srand函数产生多个随机数为什么第一个数总一样,其它的数不同
如题所述
举报该问题
推荐答案 2011-05-19
你给的程序完全没有问题,确实是产生随机数的。 但你的理解有问题。前后一第二种方法只要把srand(time(0))放在循环里面应该就可以了。第一种方法
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/vXttjzXXz.html
相似回答
使用了
种子
srand
()后,每次
第一个随机数
都相同
答:
基本上来说这是rand()伪
随机函数的一个
弊端,rand()中是一个已经定义好的序列,根据你传入的种子,然后
产生不同
的序列,这种问题,好像没有好的办法解决.--- 你那不叫种子问题,是你在取
随机数
时,范围取小了,比如说改成2,那么只有1和2这两种,如果取成3,那就是1,2,3比前面的好点,一直这样下去就...
rand生成的
随机数第一个
怎么每次都
一样
答:
使用rand()函数之前 可以给
随机数
当前时间作为 一个种子 初始化一下 这样每次生成的就不
一样了 srand
((unsigned(time(NULL)));需要头文件 #include 希望对你有帮助~
C语言:
为什么
每次
产生的
rand
随机数
全都
一样
?例如
第一个
是9,后面全都是...
答:
int side); //返回骰子
产生的数字
的总和int main(void) {int sets,side,dice; //sets为回合数,side面,dice:骰子个数int i; //变量初始化
srand
((unsigned)time(NULL)); // 应在main()初始化
随机数
种子printf("Enter the number of sets: enter q to stop.\n");...
多次循环调用
srand
出现相同数
答:
srand
(种子) 如果种子一样。那么每次的随机的值都是一样的。time(NULL) 返回公元1 9 7 0年1月1日0 0 : 0 0 : 0 0以来经过的秒数。我想你这程序也跑不到1秒。所以种子是一样的。所以
随机数
是从同一个开始的。修改,在main函数中调用srand(time(0)),fun中不调用。
为什么
两次调用
函数,
输出的结果
总的一样
呢?谢谢哦
答:
这里C语言里面的随机数实际上是伪随机数 他是根据你初始化的时候来设定
产生的随机数
的 两个调用实际上你初始化了两次 但是两次的值都是刚刚初始化的值 所有应该是一致的 你应该把随机数生成放在主函数中 这样才能生成不同的随机数
在C++中
为什么
我
用srand
()和rand()
产生随机数一样
答:
srand
(int(time(NULL)));这里一个相同的种子
产生的随机数总是一样的
。在一秒之内int(time(NULL))的返回值是不会变的。想用上面的方法
产生不
一样的随机数,两次生成种子的时间要大于1秒。如果两次生成
随机数的
频率快,就要让srand(xx);中的XX值每次不
一样,
自己想想办法吧。
C语言生成
随机数的函数,为什么
循环后随机数都
一样
?
答:
srand()函数是初始化
随机数产生
器,它
产生随机数
种子,说白了就是初始化随机数。srand((unsigned)time(0));取的是系统时间,也就是距离1970.1.1午夜有多少秒。而for循环每循环一次时间远远小于1秒,这就导致
了srand
((unsigned)time(0))
产生的
种子并没有改变。 那么,相同的随机数种子所产生的随机...
srand
(time(NULL));
为什么
把随机种子放在循环体内多次
产生随机数一样
...
答:
因为你用法错了。
为什么
错了只有贴代码才知道
srand
(time(NULL)) 这是调用time函数得到当前的时间, 用这个时间给随机设定个初始值。 这个事情一个程序里只需要做一次
,
为什么要把它放在循环里? 如果放在循环里,因为运行速度比较快, 时间没变化, 所以
总是用同一个数
给它初始化, 自然得到的...
C++
随机数
生成,下面这个程序
为什么
输出
的值
都是
一样
的?
答:
把
srand
((unsigned)time(NULL));放到while外面 include<iostream>#includeusing namespace std;void main(){int i=10,random,num=10;srand((unsigned)time(NULL));while(i>0){random=rand()%num;cout<<random<<' ';i=i-1;}}
大家正在搜
相关问题
用了srand函数产生多个随机数为什么第一个数总一样,其它的...
如何利用srand函数产生多个1~10之间的随机数,并把它存...
C语言生成随机数的函数,为什么循环后随机数都一样?
为什么srand()放到main之外的,其他函数体内,再调用...
C语言中srand随机函数怎么用?
C语言如何srand和rand函数产生10个1-100内的随...
为什么在使用rand函数前加上srand(5)产生的随机数会...
vc如何产生有效的随机数,srand(time)函数总是产生...