c++ 如何用rand()生成1到100的随机数

写主函数就ok啦

第1个回答  2013-11-12
#include <iostream.h>
#include<stdlib.h>
void main()
{
double x;
x=rand()%101;
cout<<x<<endl;
}本回答被网友采纳
第2个回答  2023-03-10
要用rand()生成1到100之间的随机数,可以先生成一个0到RAND_MAX之间的随机整数,再经过一定的运算,将其归一化到1到100之间。具体的代码实现如下:

```
// 设置随机数种子,可以放在main函数外或命名空间中
srand(time(NULL));

// 生成1到100之间的随机数
int num = rand() % 100 + 1;
```

其中,srand(time(NULL))这句话是为了设置随机数种子,以使得每次生成的随机数不重复。时间是随机种子的一种常用设置方式,保证每次程序运行时种子不同,从而产生不同的随机数序列。num = rand() % 100 + 1则通过取余的方式,将生成的随机数映射到1到100之间。

值得注意的是,C++中默认的rand()函数并不是真正的随机数生成器,而是通过一定的算法来生成伪随机数,所以不能完全避免出现重复的情况。