一 不限制数值的范围
rand()返回一个0到RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。
二 限制范围
可以使用宏定义或者inline函数,多限制值取模。
#define random(x) (rand()%x)
三 上面的值可能会有重复,避免重复的话可以使用srand来先产生种子。
这里要用到time.h头文件,获取当前的时间来作为种子。因为如果种子一样的话每次产生的数也是一样的。
#include <iostream>
#include <time.h>
int main(void)
{
srand(time(0));
for(int i=0;i<4;i++) {
printf("%d\n", random(10));
}
system("pause");
}