注册 登录
编程论坛 C++教室

【求助】如何产生一个随机数

TND 发布于 2009-10-16 19:32, 1210 次点击
今天写程序时,遇到要产生一个随机数,可怎么弄都不对!
帮忙帮我介绍一些产生随机数的函数
最好给些有代表性的例子!急急急啊!
8 回复
#2
pywepe2009-10-17 01:43
#include<cstdlib>
rand()
#3
TND2009-10-17 20:10
回复2楼
这个我知道,可rand(),每次运行产生一个相同的数??????
怎样产生不同的随机数啊????
#4
xuhaiwen2009-10-17 23:06
用标准库函数 srand();接收一个unsigned整型参数,比如

#include <cstdlib>
using namespace std;

#include <ctime>
using namespace std;
void main()
{
int a;
 srand(time(0));
 a = rand();

}
#5
loookc2009-10-19 08:24
只用rand()生成的随机数是伪随机数,需要通过设置随机数种子来实现真正的随机数
例如
int magic;
unsign int seed;
cout<<"enter seed:"<<endl;
cin>>seed;
magic=rand()%100+1;
产生的是100以内的随机数,这样随机数就不会每次都想相同了
#6
caolihui10082009-10-20 13:32
srand(time(0))是到底有什么用呢?
#7
xuhaiwen2009-10-20 17:56
使计算机通过读取自己的时钟来获取种子值,
#8
baojin2009-10-25 20:32
srand()函数可以的
#9
newCpp2009-10-27 23:17
#include <stdio.h>  
#include <iostream>  
#include <time.h>  
using namespace std;  
#define MAX 100  
int main(int argc, char* argv[])  
{  
       srand( (unsigned)time( NULL ) );
for (int i=0;i<10;i++)  
cout<<rand()%MAX<<endl;//MAX为最大值,其随机域为0~MAX-1
   return 0;  
}
1