1 条题解

  • 0
    @ 2023-3-7 18:53:11

    代码思路:

    1. 先读入两个整数n和m,表示矩阵A的行数和列数。
    2. 定义一个二维数组A,读入A矩阵的所有元素。
    3. 定义一个二维数组AT,表示A矩阵的转置矩阵。
    4. 将A矩阵的每一列赋值给AT矩阵的每一行,实现矩阵的转置。
    5. 输出AT矩阵的所有元素。

    在将A矩阵转置为AT矩阵时,需要使用两层循环,分别遍历A矩阵的每一行和每一列,并将每一列的元素赋值给AT矩阵的每一行对应位置的元素。

    最后,输出AT矩阵的所有元素即可。

    #include <iostream>
    using namespace std;
    
    int main() {
        int n, m;
        cin >> n >> m;
    
        // 定义矩阵A
        int A[100][100];
        for(int i = 0; i < n; i++) {
            for(int j = 0; j < m; j++) {
                cin >> A[i][j];
            }
        }
    
        // 定义矩阵AT,即A的转置矩阵
        int AT[100][100];
    
        // 将A的每一列赋值给AT的每一行
        for(int i = 0; i < m; i++) {
            for(int j = 0; j < n; j++) {
                AT[i][j] = A[j][i];
            }
        }
    
        // 输出AT矩阵
        for(int i = 0; i < m; i++) {
            for(int j = 0; j < n; j++) {
                cout << AT[i][j] << " ";
            }
            cout << endl;
        }
    
        return 0;
    }
    
    
    • 1

    信息

    ID
    251
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    (无)
    递交数
    2
    已通过
    2
    上传者