1
1 #include<stdio.h> 2 #include<stdlib> 3 #include<time.h> 4 5 void main() 6 { 7 time_t ts; //时间数据类型 8 unsigned int num = time(&ts); //获取时间种子,转换为整数。 9 srand(num);//初始化随机数种子。 10 int a[10]; 11 for (int i = 0; i < 10; i++) 12 { 13 a[i] = rand()%100; //将数组的值限定为0--99.[0,10); 14 } 15 }
- 也可以这样使用:
srand((unsigned)time(NULL));后面直接使用rand()就可以了。还有,rand()是一个左开右闭区间。
- srand函数是随机数发生器的初始化函数
函数原型: void srand(unsigned seed)
如果使用相同的种子(seed),那么后边的rand()每次出现的随机数就一样了,所以通常需要每一次的种子值都不一样。常用time()函数,他是用来获得系统时间的函数,返回值自 Unix 纪元(1 1 1970 00:00:00 GMT)起的当前时间的秒数,返回的结果是一个time_t类型。
- time_t s;
如果time(&s)函数中有参数,将当前时间存储到该参数中。