用C++编写并测试 3×3 矩阵转置函数,使用数组保存 3×3 矩阵。
时间: 2023-11-30 18:02:32 浏览: 129
下面是一个简单的示例代码:
```cpp
#include <iostream>
void transpose(int mat[][3], int transposed[][3]) {
for(int i=0; i<3; ++i) {
for(int j=0; j<3; ++j) {
transposed[j][i] = mat[i][j];
}
}
}
int main() {
int mat[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int transposed[3][3];
transpose(mat, transposed);
std::cout << "Original matrix:\n";
for(int i=0; i<3; ++i) {
for(int j=0; j<3; ++j) {
std::cout << mat[i][j] << ' ';
}
std::cout << '\n';
}
std::cout << "\nTransposed matrix:\n";
for(int i=0; i<3; ++i) {
for(int j=0; j<3; ++j) {
std::cout << transposed[i][j] << ' ';
}
std::cout << '\n';
}
return 0;
}
```
这个程序定义了一个 `transpose` 函数,该函数接受两个参数:第一个参数是一个 3x3 的整数矩阵,第二个参数是用于保存转置矩阵的另一个 3x3 的整数矩阵。在 `transpose` 函数中,我们使用两个嵌套的循环迭代矩阵中的每个元素,并将其添加到转置矩阵的适当位置。最后,我们在 `main` 函数中定义一个 3x3 的整数矩阵,并调用 `transpose` 函数来转置该矩阵。最后,我们分别输出原始矩阵和转置矩阵。
阅读全文