C++编制一个计算3阶矩阵相乘的函数,matrixMultiply(int ma[][3],int mb[][3],int mc[][3],int n),参数mc是结果矩阵,n是一维长度。在主函数中给ma、mb初始化,调用函数后,将mc打印输出。
时间: 2024-12-28 12:35:13 浏览: 9
在C++中,我们可以创建一个名为`matrixMultiply`的函数来计算两个3x3矩阵的乘积。这里是一个简单的示例:
```cpp
#include <iostream>
// 定义3x3矩阵结构体
struct Matrix {
int data[3][3];
};
// 矩阵乘法函数
void matrixMultiply(const Matrix& ma, const Matrix& mb, Matrix& mc, int n) {
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
mc.data[i][j] = 0;
for (int k = 0; k < n; ++k) { // 计算第i行第j列元素的值
mc.data[i][j] += ma.data[i][k] * mb.data[k][j];
}
}
}
}
int main() {
// 初始化矩阵ma和mb
Matrix ma = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
Matrix mb = {{9, 8, 7}, {6, 5, 4}, {3, 2, 1}};
// 结果矩阵mc
Matrix mc(n, n);
// 调用函数
matrixMultiply(ma, mb, mc, 3);
// 打印结果矩阵mc
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 3; ++j) {
std::cout << mc.data[i][j] << " ";
}
std::cout << "\n";
}
return 0;
}
```
在这个程序中,我们首先定义了一个Matrix结构体来表示3x3矩阵,并实现了`matrixMultiply`函数来完成矩阵乘法。然后,在`main`函数中初始化两个矩阵,调用这个函数并将结果存储在`mc`中。最后,我们遍历并打印出结果矩阵。
阅读全文