Atn2129 2015-12-02 15:39 采纳率: 100%
浏览 1370
已采纳

哪里错了,求大神帮忙解决一下

#include
void ZH()
{
int a[3][4];
int n,m;
printf("原矩阵是:\n");
for(n=0;n<3;n++)
{
for(m=0;m<4;m++)
{
printf("a[%d][%d]=",n,m);
scanf("%d\n",&a[n][m]);
}
}
for(n=0;n<3;n++)
{
for(m=0;m<4;m++)
{
a[m][n]=a[n][m];
}
}
printf("变换后的矩阵是:");
printf("%d",a[m][n]);
if(n%2==0)printf("\n");
}
void main()
{
ZH();
}

  • 写回答

6条回答 默认 最新

  • 无知者无谓 2015-12-03 01:05
    关注

    你要明白:内存里面是没有所谓2维数组的说法的,它永远是一维的,二维你你逻辑自己定义的。
    比如你定义int a[4][3],b[3][4],a和b占用的内存永远是连续的12个int的一维空间。
    不知道这么说你能不能明白。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?