1.c语言中,生成随机数需要用到srand()函数和rand()函数。
2.srand()函数
随机数发生器的初始化函数,需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子,rand()函数会出现一样的随机数。一般默认种子数为1,即srand(1)。
3.rand()函数
伪随机数发生器,需要先调用srand()初始化,,以当前日历时间初始化随机数种子(时间在流逝所以可以保证种子的不同)。
3。随机数产生原理
随机数中的变量种子rand初始化会赋值给holdrand,然后holdrand和一个公式计算得出随机数,同时赋值给holdrand,然后返回。
4.
srand(time(0));先随机设置种子
rand();再产生随机数
5.若取的值不是从0开始,记住一个公式:
取[a,b)之间的随机整数,使用:rand()%(b-a)+a
取0~1之间的浮点数,可用:rand()/(double)(RAND_MAX)
取更大范围的浮点数,可用:rand()/(double)(RANFD_MAX)/100
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int a;
srand(time(0));
a=rand()%44+46;//46~90
printf("%d",a);
return 0;
}