使用c++输入两个3×3的矩阵,完成以下功能: 1. 计算两个矩阵的和。 2. 计算两个矩阵的乘积。 3. 输出结果矩阵。 要求 1. 使用二维数组存储矩阵。 2. 使用嵌套循环实现矩阵加法和乘法。 3. 矩阵的元素由用户输入。
时间: 2024-12-22 19:21:41 浏览: 5
在C++中,你可以通过以下步骤来实现这个功能:
1. 定义一个二维数组来存储矩阵,并要求用户输入矩阵的元素。例如,可以创建一个`int`类型的二维数组:
```cpp
#include <iostream>
using namespace std;
const int ROWS = 3;
const int COLS = 3;
// 函数声明
void inputMatrix(int matrix[ROWS][COLS]);
void addMatrices(int a[ROWS][COLS], int b[ROWS][COLS], int result[ROWS][COLS]);
void multiplyMatrices(int a[ROWS][COLS], int b[ROWS][COLS], int result[ROWS][COLS]);
int main() {
int a[ROWS][COLS], b[ROWS][COLS], c[ROWS][COLS];
inputMatrix(a);
inputMatrix(b);
// 矩阵加法
addMatrices(a, b, c);
cout << "矩阵加法结果:\n";
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLS; ++j) {
cout << c[i][j] << " ";
}
cout << endl;
}
// 矩阵乘法
multiplyMatrices(a, b, c);
cout << "\n矩阵乘法结果:\n";
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLS; ++j) {
cout << c[i][j] << " ";
}
cout << endl;
}
return 0;
}
// 用户输入函数
void inputMatrix(int matrix[ROWS][COLS]) {
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLS; ++j) {
cout << "请输入第 " << (i+1) << " 行第 " << (j+1) << " 列的元素: ";
cin >> matrix[i][j];
}
}
}
```
在这个代码中,我们首先定义了两个3x3的矩阵a和b,以及第三个结果矩阵c。`inputMatrix`函数用于获取用户的输入,而`addMatrices`和`multiplyMatrices`函数分别实现了矩阵的加法和乘法运算。
矩阵加法是简单的逐元素相加,矩阵乘法则需要按照规则进行计算(如第一个矩阵的行数应等于第二个矩阵的列数)。注意,在实际应用中,你需要确保用户输入合法,比如在乘法操作前检查是否满足维度匹配。
运行程序后,用户将被提示输入矩阵元素,然后会看到加法和乘法的结果矩阵。
阅读全文