C语言练习:矩阵置换

描述

输入一个n行m列的矩阵A,输出它的转置AT。

输入

第一行包含两个整数n和m,表示矩阵A的行数和列数。1 <= n <= 100,1 <= m <= 100。
接下来n行,每行m个整数,表示矩阵A的元素。相邻两个整数之间用单个空格隔开,每个元素均在1~1000之间。

输出

m行,每行n个整数,为矩阵A的转置。相邻两个整数之间用单个空格隔开。

样例输入

3 3
1 2 3
4 5 6
7 8 9

样例输出

1 4 7
2 5 8
3 6 9

代码:

#include
#include
int main()
{
    int n, m, i, j;
    scanf("%d %d", &n, &m);  //行列范围
    int a[100][100];      //定义数组
    int b[100][100];
    for (i = 0; i < n; i++) {
        for (j = 0; j < m; j++) {  //置换
            scanf("%d", &a[i][j]);
            b[j][i] = a[i][j];
        }
    }
    for (i = 0; i < m; i++) {  //输出置换后的矩阵
        for (j = 0; j < n; j++) {
            printf("%d ", b[i][j]);
        }
        printf("\n");
    }

    return 0;
}

你可能感兴趣的:(算法,c语言,矩阵)