zxdlinux163
zxdlinux163
2016-03-06 04:11
采纳率: 100%
浏览 1.4k
已采纳

一个矩阵转置的问题,错在哪里?

#define M 4
#include

int main()
{
int a[M][M]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
int i,j;
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
printf("%d\t", a[i][j]);
printf("\n");
}
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
{
int t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
printf("%d\t", a[i][j]);
printf("\n");
}
return 0;
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳

    for(j=0;j ->
    for(j=0;j<i;j++)
    不然又颠倒过来了。

    点赞 评论
  • WinsenJiansbomber
    Jimbo 2016-03-06 05:25

    自己码就是问题多,用 Mathematica 就简单多了

    点赞 评论

相关推荐