如何运用time函数和srand函数生成随机数
成都创新互联总部坐落于成都市区,致力网站建设服务有网站设计、成都网站制作、网络营销策划、网页设计、网站维护、公众号搭建、小程序设计、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!
#include stdio.h
#include stdlib.h//srand()、rand()
#include time.h//time();
#define N 50
int main()
{
int n;
srand((unsigned)time(NULL));//设置随机数种子
while (1)
{
n = (rand() % 10) + 1 ;//产生1~10的随机数
//rand()产生的是一个很大的数,对其求余就可以达到限定范围的目的
printf("%d ", n);
}
return 0;
}
C语言函数名rand()
简介
功
能::伪随机数发生器
所属库:stdlib.h
用
法:
需要先调用srand初始化,一般用当前日历时间初始化随机数种子,这样每次执行代码都可以产生不同的随机数。
函数原型:int
rand(void);
相关函数:srand、time、GetTickCount
程序例
1:
#include
"stdio.h"
#include
"stdlib.h"
int
main(void)
{
int
i;
printf("Ten
random
numbers
from
to
99\n\n");
for(i=0;
i10;
i++)
printf("%d\n",
rand()
%
100);
return
0;
}
例1程序在每次运行时都会生成相同的十个伪随机数,如要每次生成的随机数不同应结合srand函数和time函数。
///////////////////
int
i,a;
for(i=0;i3;i++)
{
a=rand()%9;
printf("%d",a);
}
假设要生成的随机数是大于等于20且小于等于100的整数
#includestdio.h
#includetime.h
#includestdlib.h
void main() { int a,b,x;
a=20; b=100;
srand((unsigned int)time(NULL)); //用当前时间生成一个随机数种子
x=rand()%(b-a+1)+a;
printf("得到一个随机数:%d\n",x);
}
#include stdlib.h
#include time.h
void main(){
int i,a[20],n=0;
srand(time(NULL));
for(i=0;i20;i++)
{
a[i]=rand()%146+60;
printf("%-4d",a[i]);
n++;
if(n%5==0)
printf("\n");
}
}
运行示例: