哪有错误?关于转置自己编的程序

来源:百度知道 编辑:UC知道 时间:2024/09/21 05:39:11
#include<stdio.h>
void main()
{
void zhuanhuan(int a[3][3]);
int a[3][3],i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);

zhuanhuan(a);
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%d",a[i][j]);
printf("\n");
}
}
void zhuanhuan(int a[3][3])
{
int i,j,t;
for(i=0;i<3;i++)
{for(j=i;j<3;j++)
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;

}
}
望哪位高人看一下!谢......

for(i=0;i<3;i++)
{for(j=i;j<3;j++)
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
这样转置不可以
(想想为什么?)
只能将它转置放到另一个数组里
然后在拷贝回去