矩阵转置
题目描述
输入一个 n n n 行 m m m 列的矩阵 A A A,输出它的转置 A T A^T AT。
输入格式
第一行包含两个整数 n n n 和 m m m,表示矩阵 A A A 的行数和列数。 1 ≤ n ≤ 100 1 \le n \le 100 1≤n≤100, 1 ≤ m ≤ 100 1 \le m \le 100 1≤m≤100。
接下来 n n n 行,每行 m m m 个整数,表示矩阵 A A A 的元素。相邻两个整数之间用单个空格隔开,每个元素均在 1 ∼ 1000 1 \sim 1000 1∼1000 之间。
输出格式
m m m 行,每行 n n n 个整数,为矩阵 A A A 的转置。相邻两个整数之间用单个空格隔开。
样例 #1
样例输入 #1
3 3
1 2 3
4 5 6
7 8 9
样例输出 #1
1 4 7
2 5 8
3 6 9
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<stdlib.h>
#include<stdbool.h>
int main(){
int num1[101][101],num2[101][101],m,n;
int i,j;
scanf("%d%d",&m,&n);
for(i=1;i<=m;i++){
for(j=1;j<=n;j++){
scanf("%d",&num1[i][j]);
}
}
for(i=1;i<=m;i++){
for(j=1;j<=n;j++){
num2[j][i]=num1[i][j];
}
}
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
printf("%d ",num2[i][j]);
}
printf("\n");
}
return 0;//csdn:旺旺的碎冰冰~
}