产生随机数的两个函数:一、rand(产生随机数)表头文件:#include定义函数:intrand(void)函数说明:因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数值,范围在0至RAND_MAX间
在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1
rand()产生的是假随机数字,每次执行时是相同的
若要不同,以不同的值来初始化它
初始化的函数就是srand()
返回值:返回0至RAND_MAX之间的随机整数值,RAND_MAX的范围最少是在32767之间(int),即双字节(16位数)
若用unsignedint双字节是65535,四字节是4294967295的整数范围
0~RAND_MAX每个数字被选中的机率是相同的
二、srand(设置随机数种子)表头文件:#include定义函数:voidsrand(unsignedintseed);函数说明:srand()用来设置rand()产生随机数时的随机数种子
参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed
如果每次seed都设相同值,rand()所产生的随机数值每次就会一样
应用举例:1、程序输出一百以内的随机整数:#include#include#include#defineMAX10intmain(void){intnumber[MAX]={0};inti;srand(time(0));for(i=0;i