1870 - 求转置矩阵问题
求一个三行三列的转置矩阵
题目输入
第一行一个整数n<20,表示有n组测试数据,下面是n组数据;
每组测试数据是九个整型数(每个数都不大于10000),分别为矩阵的的每项;
题目输出
每组测试数据的转置矩阵;
请在每组输出之后加一个换行
输入/输出样例
题目输入
2 1 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 1
题目输出
1 4 7 2 5 8 3 6 9 2 5 8 3 6 9 4 7 1
C语言解答
#include <stdio.h> int main(){ int n; scanf("%d", &n); while(n--){ int M[9], i; for(i = 0; i < 9; i++) scanf("%d", &M[i]); for(i = 0; i < 3; i++) printf("%d %d %d\n", M[i], M[i+3], M[i+6]); puts(""); } return 0; }
C++解答
#include<iostream> using namespace std; int main() { int a[3][3],n,t,i,j; cin>>n; for(t=1;t<=n;t++) { for(j=0;j<3;j++) for(i=0;i<3;i++) cin>>a[i][j]; for(i=0;i<3;i++) { for(j=0;j<2;j++) if(a[i][j]<=10000) cout<<a[i][j]<<" "; if(a[i][j]<=10000) cout<<a[i][j]<<endl; } cout<<endl; } return 0; }