矩阵的转置
二维数组的转置
#include<stdio.h>
#define N 3
#define M 4
main()
{
int i,j;
int a[N][M]={0,1,2,3,4,5,6,7,8,9,10,11},b[M][N];
for(i=0;i<M;i++)
for(j=0;j<N;j++)
{
b[i][j]=a[j][i];
}
for(i=0;i<M;i++)
for(j=0;j<N;j++)
{
printf("%6d",b[i][j]);
if(j==2)
printf("\n");
}
}
最开始写的时候想控制二维数组行的输出,
把printf("%6d",b[i][j]);
if(j==2)
printf("\n");这几行语句的顺序写错了,写成 if(j==2)
printf("\n");
printf("%6d",b[i][j]);,输出的结果是这样的 0 4
8 1 5
9 2 6
10 3 7
11。