欢迎来到天天文库
浏览记录
ID:57687296
大小:13.00 KB
页数:2页
时间:2020-09-01
《C语言中的随机数函数.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、随机数函数:rand()与srand()在C语言函数库中包含了一个产生随机数的函数:intrand(void);函数返回的是一个界于0~32767之间的伪随机数,包括0和32767。注意,这里产生的是伪随机数,不是真正意义上的随机数,看下面的程序:#include"stdlib.h"#include"stdio.h"voidmain(){ /*输出一个伪随机数*/ printf("%d",rand());}运行结果:346多次运行这个程序,发现每次产生的结果都是346(不同的机器可能产生的结果不一样),这就是所谓的伪随机数。那么,如何才能产生真正意义上的随机数
2、呢?这就有一个随机种子的问题。在C语言标准函数库中,有这么一个函数:voidsrand(unsignedintseed);参数中的seed就是用来产生一个随机数系列的种子,缺省值是1。所以,要产生真正意义上的随机数,就要求每次提供的种子不一样,一般情况下,都设置时间为随机函数的种子。看下面的一段程序:#include"stdlib.h"#include"stdio.h"#include"time.h"voidmain(){ inti; /*将当前时间设置成随机函数的种子,所以每次产生的数都不一样*/ srand((unsigned)time(NULL)); /*输
3、出10个随机数*/ for(i=0;i<10;i++) printf(“%d”,rand());}运行结果:6929802621987307342058766992203425051798810104每次运行这个程序,产生的随机数都不一样,这样就达到要求了。若要输出1~10之间的随机数,可将最后一个printf中的rand()改为rand()%10+1。
此文档下载收益归作者所有