C++ 产生多个随机数
来源:百度知道 编辑:UC知道 时间:2024/05/26 08:18:29
不要都一样的
C++产生的随机数都是伪随机数。分两步,首先给一个随机数种子seed,调用函数srand(seed),接着调用函数rand()即返回随机数。
如果两次给的是随机数种子相同,则生成的随机数也是一样的。
更详细地可参看百度“伪随机数”词条。
#include<ctime>
#define n 5
int a[n];
srand((unsigned)time(NULL));
for(int i=0;i<n;i++)
a[i]=rand();
引楼上的,但是有一点注意,随机种子最好在每次生成一个随机数的时候都重新生成一个。故做修改如下:
#include<ctime>
#define n 5
int a[n];
for(int i=0;i<n;i++)
{
srand((unsigned)time(NULL));
a[i]=rand();
}
另外作下说明,a[i]=rand(); 这条语句最好改掉,如果你要生成的随机数是从0到99的:a[i]=rand()%100; 如果随机数是从1到100的:a[i]=rand()%100+1;诸如此类,mod(%)运算求余原理。
stdlib.h 里面的srand() 函数
调用time.h 里面的 time() 做种子 。
#include<ctime>
#define n 5
int a[n];
srand((unsigned)time(NULL));
for(int i=0;i<n;i++)
a[i]=rand();
你要几个。。