C++随机数产生函数

上传人:公**** 文档编号:562981476 上传时间:2022-12-08 格式:DOC 页数:4 大小:24KB
返回 下载 相关 举报
C++随机数产生函数_第1页
第1页 / 共4页
C++随机数产生函数_第2页
第2页 / 共4页
C++随机数产生函数_第3页
第3页 / 共4页
C++随机数产生函数_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《C++随机数产生函数》由会员分享,可在线阅读,更多相关《C++随机数产生函数(4页珍藏版)》请在金锄头文库上搜索。

1、例子代码:# include# include# includevoidmain(void)inti;srand(unsigned)tiine(NULL);for(1=0;i10;i+)priiitf(%6dn役rand();执行结果:6929802621987307342058766992203425051798810104关于randQ:产生一个伪随机数。mtraiid(void);返回值:KUKi返回如上所述的一个伪随机数。没有错误返回。说明land函数返回一个0到RANDMAX范I韦I内的伪随机整数。在调用rand之前使用srand函数传送伪随机数生成器。RANDMAX的定义在stdl

2、ib.h里面关于srand():设置一个随机起始点voidsiand(unsigiiedintseed);返回值:无参数:seedsrand函数为产生一序列伪随机整数而设置起始点。为了重新初化该生成器,使用1作为seed自变量。seed的任何其它值设置该生成器为随机起始点。rand检索生成的伪随机数。在任何调用srand之前调用rand与以1作为seed调用srand产生相同的序列。使用rand函数获得随机数,为了避免重复用随机种子函数srandQ;举个例子:产生10100之间的随机数srand(tune(NULL);需要头文件hme.h,stdlib.hiiiti=10+randQ%91;产

3、生10100之间的随机数用iand()生成随机数rand(产生随机数)相关函数srand表头文件#iiiclude定义函数mtiand(void)函数说明rand()会返回一随机数值,范|制在0至RAND_MAX间。在调用此函数产生随机数前,必须先利用srandO设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。关于随机数种子请参考srandQo返回值返回0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h,其值为2147483647。范例/*产生介于1到10间的随机数值,此范例未设随机数种子,完整的随机数产生请参考srand()*/#iii

4、cludemain()mtij;foi(i=0;i10;i+)j=l+(mt)(10.0*iand()/(RAND_NIAX+1.0);pmitf(”d”j);执行9488102483694881024836srand(设置随机数种子)相关函数rand表头文件#iiiclude定义函数voidsrand(unsignedmtseed);函数说明snmd()用来设置灿d()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。如果每次seed都设相同值,mnd()所产生的随机数值每次就会一样。返回值范例/*产生介于1到10间的随机

5、数值,此范例与执行结果可与rand()参照*/#iiiclude#iiicludemain()mtij;srand(int)time(O);fbr(i=0;i10;i+)尸+(int)(100*nmd()/(RAND_MAX+l0);pmittf%d”,j);执行588810210899297410321087一般来说使用C库函数randO会获得一个从0到65535之间的随机数。所以,你如果需要一个100到200之间的随机数,你就应该使用1-aiidO%100+100o而浮点吗?根据你所需要的精度,自己想办法转换一下。比如只需要0.00到0.99,用(float)(randQ%100)/100.0)就可以了。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号