重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
rand函数功能为获取一个伪随机数(伪随机数的概念下面会有介绍)。
创新互联为客户提供专业的成都网站制作、成都网站设计、程序、域名、空间一条龙服务,提供基于WEB的系统开发. 服务项目涵盖了网页设计、网站程序开发、WEB系统开发、微信二次开发、手机网站开发等网站方面业务。
一、函数名:
rand();
二、声明:
int rand();
三、所在头文件:
stdlib.h
四、功能:
返回一个伪随机数。之所以说是伪随机数,是因为在没有其它操作下,每次执行同一个程序,调用rand得到的随机数序列是固定的(不是真正的“随机”)。
五、为了使rand的结果更“真”一些,也就是令其返回值更具有随机性(不确定性),C语言在stdlib.h中还提供了srand函数,通过该函数可以设置一个随机数种子,一般用当前时间的毫秒数来做参数。通过time(NULL)可以获取到当前时间的毫秒值(该函数位于time.h)中。
六、使用rand的流程可以总结为:
1 调用srand(time(NULL))设置随机数种子。
2 调用rand函数获取一个或一系列随机数。
需要注意的是,srand只需要在所有rand调用前,被调用一次即可,没必要调用多次。
七、以下是随机获取10个整型值并输出的例子,辅助理解。
#include stdio.h
#include stdlib.h
#include time.h
int main()
{
int i;
srand(time(NULL));//设置随机数种子。
for(i = 0; i 10; i ++)//运行10次。
printf("%d\n", rand());//每次获取一个随机数并输出。
return 0;
}
rand()函数,一般根srand()函数一起用。它们在一起,作用是:产生一个随机数。
通常格式为:
srand ( (unsigned) time (NULL) );
a=rand()%x; //a,x,均为整型变量,其中,x在之前应被赋值。
srand函数里面的unsigned也可以换成其它的。例如:int之类的数据类型,但结果也会有相应的变化。
通过rand函数产生随机数以后,用%x来限定它的范围。即:0=ax。
其原理是:用那个随机数,去除以x,留下所得余数,作为最终结果。
函数rand()是随机数生成器
有两个函数用于产生随机数:srand()和rand()。
函数一:int
rand(void);从srand
(seed)中指定的seed开始,返回一个[0,
RAND_MAX(0x7fff)]间的随机整数。
函数二:void
srand(unsigned
seed);参数seed是rand()的种子,用来初始化rand()的起始值。
rand()函数作用:用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。
rand()函数返回:返回一个范围在0到RAND_MAX(32767)之间的伪随机数(整数)。
rand()函数头文件:stdlib.h。
rand()函数原型:int rand(void)。
在调用rand()函数之前,可以使用srand()函数设置随机数种子,如果没有设置随机数种子,rand()函数在调用时,自动设计随机数种子为1。随机种子相同,每次产生的随机数也会相同