C++随机整数

来源:互联网 发布:阿里云可以干嘛 编辑:程序博客网 时间:2024/06/03 11:37

一 不限制数值的范围
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");}
0 0