怎样用二维数组名实现三阶矩阵转置?
我想实现三阶矩阵转置,经前辈讲解有少许改进,但仍然不能运行,
这是怎么回事??
#include <stdio.h>
#define N 3
void convert(int a[][]);
main()
{int a[N][N],i,j;
for(i=0;i <N;i++)
for(j=0;j <N;j++)
scanf("%d",&a[i][j]);
printf("You input:\n");
for(i=0;i <N;i++)
{for(j=0;j <N;j++)
{printf("%3d",a[i][j]);}
printf("\n");
}
convert(a);
printf("convert:\n");
for(i=0;i <N;i++)
{for(j=0;j <N;j++)
{printf("%3d",a[i][j]);}
printf("\n");
}
void convert(int a[N][N])
{int i,j,t;
for(i=0;i <N;i++)
for(j=i+1;j <N;j++)
{t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;}
}
}