c++输入维度生成矩阵,矩阵元素随机赋值
时间: 2024-10-19 13:07:21 浏览: 15
在C++中,如果你想要根据用户输入的维度动态生成矩阵,并为其元素赋予随机值,可以使用标准库如 `<random>` 和 `<vector>`。以下是一个简单的示例:
```cpp
#include <iostream>
#include <vector>
#include <cstdlib> // 包含随机数生成函数
#include <ctime> // 设置随机数种子
// 定义随机数生成器
std::default_random_engine generator(std::chrono::system_clock::now().time_since_epoch().count());
// 生成指定范围内的随机整数
int random_number(int min, int max) {
std::uniform_int_distribution<int> distribution(min, max);
return distribution(generator);
}
int main() {
int rows, cols;
// 获取用户输入的行数和列数
std::cout << "请输入矩阵的行数: ";
std::cin >> rows;
std::cout << "请输入矩阵的列数: ";
std::cin >> cols;
// 创建一个二维向量来表示矩阵
std::vector<std::vector<int>> matrix(rows, std::vector<int>(cols));
// 遍历矩阵,为每个元素赋予随机值
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
matrix[i][j] = random_number(0, 99); // 这里假设你想得到0到99之间的随机数
}
}
// 打印矩阵
for (const auto &row : matrix) {
for (int elem : row) {
std::cout << elem << " ";
}
std::cout << "\n";
}
return 0;
}
```
在这个例子中,程序首先获取用户的行数和列数作为矩阵的维度,然后创建对应的 `std::vector` 矩阵。接下来通过嵌套循环遍历矩阵,为每个元素生成一个0到99之间的随机整数。
阅读全文