转置运算就是沿着矩阵对角线进行反转
1 #include<stdio.h> 2 3 #define N 3 4 int main(void) 5 { 6 int array[N][N]={ 7 {1,2,3}, 8 {4,5,6}, 9 {7,8,9} 10 }; 11 12 int i,j; 13 for(i=0;i<N;++i) 14 { 15 for(j=0;j<N;++j) 16 { 17 printf("%3d",array[i][j]); 18 } 19 printf("\n"); 20 } 21 22 int temp; 23 for(i=0;i<N;++i) 24 { 25 for(j=i+1;j<N;++j) 26 { 27 temp=array[i][j]; 28 array[i][j]=array[j][i]; 29 array[j][i]=temp; 30 } 31 } 32 33 for(i=0;i<N;++i) 34 { 35 for(j=0;j<N;++j) 36 { 37 printf("%3d",array[i][j]); 38 } 39 printf("\n"); 40 } 41 return 0; 42 }
需要注意的就是在进行判断的时候要始终令列号大于行号,(也可以选择别的规则),此时再进行转换就可以很好的实现了。
时间: 2024-10-12 13:56:25