10:矩阵转置

总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个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<iostream>
using namespace std;
int main(){
	int n,m;
	cin>>n>>m;
	
	int a[n+5][m+5];
	//输入矩阵 
	for(int i=1;i<=n;i++)
	for(int j=1;j<=m;j++)
	cin>>a[i][j];
	
	//按列输出,以前是按行输入,按行输出,
	//转置过后是按行输入,按列输出 
	//此时即为按列输出 
	for(int j=1;j<=m;j++){
		for(int i=1;i<=n;i++)
		cout<<a[i][j]<<' '; 
		
		cout<<endl;
	}
	
	return 0;
}
发布了36 篇原创文章 · 获赞 0 · 访问量 350

猜你喜欢

转载自blog.csdn.net/weixin_44437496/article/details/104008090