2024年4月26日发(作者:)
c++中的随机函数(rand,sand)的用法[转载]
学习园地 2007-05-28 13:37:50 阅读243 评论2 字号:大中小 订阅
首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand产生随机数,
下面将详细说明。
rand(产生随机数)
表头文件: #include
定义函数 :int rand(void)
函数说明 :
因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周
期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数值,范围在0至
RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果
未设随机数种子,rand()在调用时会自动设随机数种子为1。rand()产生的是假随机数字,
每次执行时是相同的。若要不同,以不同的值来初始化它.初始化的函数就是srand()。
返回值:
返回0至RAND_MAX之间的随机整数值,RAND_MAX的范围最少是在32767之
间(int),即双字节(16位数)。若用unsigned int 双字节是65535,四字节是4294967295
的整数范围。
0~RAND_MAX每个数字被选中的机率是相同的。
范例:
/* 产生介于1 到10 间的随机数值,此范例未设随机数种子,完整的随机数产生请参
考
srand()*/
#include
main()
{
int i,j;
for(i=0;i<10;i++)
{
j=1+(int)(10.0*rand()/(RAND_MAX+1.0));
printf("%d ",j);
发布评论