C语言随机数生成方法
代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand((unsigned int)time(NULL)); //用于生成随机数种子
int tmp = 0;
for (int i = 0; i < 10; i++)
{
tmp = rand()%100+1; //生成1-100的随机数
printf("%d\n", tmp);
}
return 0;
}
总结
- 在调用srand()函数时引用头文件 #include <stdlib.h>;
- 在实际使用时不要将srand和rand放在同一个最小语句块内,srand生成一个种子就够。不然生成的随机数是递增的,并不是乱序;
- rand产生一个0-0x7fff的随机数,即最大是32767的一个数。有些时候,用户需要获取一定更小范围中的一随机数,如得到一组100以内的随机数,就可以采用rand()%100这种方法,使得结果在100以内;
- 举例:生成0-9的随机数 rand()%10