c++中如何生成随机数
时间: 2023-10-29 10:44:35 浏览: 34
在 C 语言中,可以使用标准库中的 rand() 函数来生成随机数。具体步骤如下:
1. 在程序中包含头文件 stdlib.h。
2. 使用 srand() 函数对随机数生成器进行初始化。srand() 函数需要一个参数,用于设置随机数生成器的种子值。通常可以使用 time() 函数返回的当前时间作为种子值。示例代码如下:
srand((unsigned int)time(NULL));
3. 调用 rand() 函数生成随机数。rand() 函数返回一个介于 0 和 RAND_MAX 之间的随机整数。可以使用模运算将其限制在指定范围内。例如,要生成介于 1 和 100 之间的随机数,可以使用如下代码:
int random_num = rand() % 100 + 1;
完整示例代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand((unsigned int)time(NULL));
int random_num = rand() % 100 + 1;
printf("随机数为:%d\n", random_num);
return 0;
}
相关问题
c++实现生成随机数
可以使用 C++ 标准库中的 rand() 函数来生成随机数。具体实现如下:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
// 设置随机数种子
srand(time(NULL));
// 生成随机数
int random_num = rand();
cout << "随机数为:" << random_num << endl;
return 0;
}
```
需要注意的是,为了让每次生成的随机数都不同,需要在程序开始时设置随机数种子。上面的代码中,使用了当前时间作为种子,保证每次运行程序时都会生成不同的随机数。
c++random生成随机数
你可以使用 C++ 中的 `<random>` 头文件来生成随机数。下面是一个简单的示例代码:
```cpp
#include <iostream>
#include <random>
int main() {
// 创建一个随机数引擎
std::random_device rd;
std::mt19937 gen(rd());
// 创建一个范围在 [0, 100] 的均匀分布
std::uniform_int_distribution<> dis(0, 100);
// 生成随机数
int random_num = dis(gen);
std::cout << "随机数: " << random_num << std::endl;
return 0;
}
```
这段代码中,我们首先创建了一个随机数引擎 `std::mt19937`,并使用 `std::random_device` 来为其提供种子,以确保每次运行生成的随机数序列都不同。
然后,我们创建了一个范围在 [0, 100] 的均匀分布 `std::uniform_int_distribution`,并使用该分布和随机数引擎来生成一个随机数。
最后,我们将生成的随机数输出到控制台上。
你可以根据需要调整范围和分布类型,以满足你的具体需求。