输入一个n行m列的矩阵A,输出它的转置AT。(简单c++)
时间: 2024-12-29 12:34:38 浏览: 14
在C++中,如果你想要输入一个n行m列的二维数组(矩阵)并输出其转置,可以使用嵌套循环来实现。这里是一个简单的例子:
```cpp
#include <iostream>
using namespace std;
// 函数声明,接收两个整数作为参数,代表矩阵的行数和列数
void transpose(int n, int m, int A[n][m], int AT[m][n]) {
// 使用两层for循环,遍历原矩阵A并将元素复制到转置矩阵AT
for (int i = 0; i < n; ++i) { // 遍历原矩阵的每一行
for (int j = 0; j < m; ++j) { // 遍历原矩阵的每一列
AT[j][i] = A[i][j]; // 将当前元素复制到转置矩阵对应的位置
}
}
}
int main() {
int n, m;
cout << "请输入矩阵的行数n和列数m:";
cin >> n >> m;
// 初始化一个n行m列的矩阵A
int A[n][m];
cout << "请输入矩阵A:" << endl;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
cin >> A[i][j];
}
}
// 初始化转置矩阵AT
int AT[m][n];
// 转置矩阵A并打印结果
transpose(n, m, A, AT);
cout << "转置后的矩阵AT为:" << endl;
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
cout << AT[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
阅读全文