在c语言里,为什么rand()每次生成的数都一样?

如题~~~
怎么才能生成随机的数?

那是因为rand()生成的是伪随机数,需要种子来产生不同的随机数。
如果在预编译时声明#include<ctime>,则可用生成种子的函数 srand((unsigned)time(NULL)) ,因为时间值可以看成是一个随机的量(即每一时刻都不同),所以就生成了变化的伪随机数
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-09-13
没有生成随机数种子,随机数发生器其实是有规律的,要产生无规律随机数需要每次用不同的种子数初始化随机数发生器
第2个回答  2006-09-13
rand((unsigned)time(NULL))

你生成的数字一样,是因为没有根据它的时间来变化,上面的代码就可以了.
第3个回答  2006-09-12
少写了 srand((unsigned)time(NULL))
第4个回答  2006-09-13
还有一个初始公函数没用
相似回答