用rand()随机出来的数每次都一样 怎样能再次运行的时候出不同的数字呢?
rand利用计算机字长有限的特点,使用相同的算法,从一个随机种子开始计算出随机数列。
因此,如果每次程序运行时的初始随机种子相同,那么其产生的随机数列也是相同的。
可以通过改变初始随机种子来改变随机数列。只有通过把随机种子与不可确定的外部因素联系起来才有可能产生真正意义上的随机数列。利用系统时间是最简单的一种方法。
如上:
#include <time.h> // or <ctime> in C
srand(time(NULL));
| 操作选项: 加精 解精 奖惩 设专题 设公告 解公告 固顶 总固顶 解固顶 结帖 解结帖 锁帖 解锁 移帖 删帖 |
所在位置:
看看评论