1844 - 课后习题8.4
写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。
Input
一个3x3的矩阵
Output
转置后的矩阵
Examples
Input
1 2 3 4 5 6 7 8 9
Output
1 4 7 2 5 8 3 6 9
Solution C
#include<stdio.h> main() { int i,j,t,a[3][3]; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); for(i=0;i<3;i++) for(j=0;j<3;j++) if(i<=j) { t=a[i][j]; a[i][j]=a[j][i]; a[j][i]=t; } for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); } }
Solution C++
#include<bits/stdc++.h> using namespace std; long long a[100][100]; int main() { for(int i=1;i<=3;i++) for(int j=1;j<=3;j++) cin>>a[j][i]; for(int i=1;i<=3;i++) { for(int j=1;j<=3;j++) cout<<a[i][j]<<" "; cout<<"\n"; } return 0; }