随机数和时间函数
头文件<stdlib.h>和<time.h>
1、随机数函数
(1)当没有设置随机数种子的时候,系统设置随机数种子为1,每次生成的随机数都是相同的,产生的是伪随机数。
int h=rand()%900+100 ;//生成三位随机整数
printf("%d",h);
(2)使用srand()设置随机数种子,srand()的参数是整型数,但是固定的随机数种子产生的也是相同的随机数
int a=100
srand(a);
int h=rand( )%900+100 ;//生成三位随机整数
printf("%d",h);
(3)使用时间函数作为随机数种子
time_t t;
//time()返回值是一个time_t类型的时间值
//也就是一个 long int,也就是t
srand((unsigned)time(&t));//获取当地时间当随机数种子
int h=rand( )%900+100 ;//生成三位随机整数
更简洁的写法:
srand(time(NULL));//获取当地时间当随机数种子
int h=rand( )%900+100 ;//生成三位随机整数
或者:
srand(time(0));//获取当地时间当随机数种子
int h=rand( )%900+100 ;//生成三位随机整数
2、获取当前时间函数
localtime()转化为当地时间
asctime()格式转化
time_t t;
//time()返回值是一个time_t类型的时间值,也就是一个 long int
//也就是t
printf("%ld\n",time(&t));
printf("%ld\n",t);//返回值就是time_t t
printf("%ld\n",time(NULL));
printf("%ld\n",time(0));
//这四句的输出是一样的
printf("%s\n",asctime(localtime(&t)));
//localtime()转化为当地时间
//asctime()格式转化