用C++实现,输入一个整数N,输出1到1000000范围内的N个随机整数
时间: 2024-10-05 13:02:31 浏览: 19
在C++中,你可以使用`<random>`库来生成随机数,并结合`<iostream>`来获取用户输入和输出结果。这里是一个简单的示例程序,它会读取用户输入的整数N,然后生成并打印出N个1到1000000之间的随机整数:
```cpp
#include <iostream>
#include <vector>
#include <random>
int main() {
// 获取用户输入的整数N
int N;
std::cout << "请输入要生成的随机数个数N: ";
std::cin >> N;
// 确保N大于等于1,因为不能生成0个随机数
if (N <= 0) {
std::cerr << "错误!随机数个数必须大于0。\n";
return 1;
}
// 创建一个向量存储随机数
std::vector<int> random_numbers(N);
// 使用Mersenne Twister随机数引擎
std::mt19937 generator(std::random_device{}()); // 使用随机设备初始化
// 设置随机数分布,范围在[1, 1000000]
std::uniform_int_distribution<int> distribution(1, 1000000);
for (size_t i = 0; i < N; ++i) {
random_numbers[i] = distribution(generator); // 生成每个随机数并存储
}
// 打印随机数
std::cout << "生成的" << N << "个1到1000000之间的随机数是:\n";
for (const auto& num : random_numbers) {
std::cout << num << " ";
}
std::cout << "\n";
return 0;
}
```