所谓的随机数只是一种绝对理想状态的随机数,计算机生成的随机数即是随机的又是有规律的:
srand(1);
for(int i =0;i<10;++i)
{
int randNum = rand%10;
count<<randNum;
}
这个生成的随机数是 [0,6)之间的一个数,每次输出都是一样的序列,那么如何让每次输出的序列不一样呢?
利用系统时间:
int seed = QDateTime::currentDateTime().time().second();
srand(seed);
for(int i =0;i<10;++i)
{
<pre name="code" class="cpp"><span style="white-space:pre"> </span>int randNum = (rand()%10)+80;
count<<randNum; }
秒是实时变得,所以seed也会变,导致每次输出的序列不一样。