能帮我看下我的哪里错了吗
printf(++t%8 ? "%3d" : "%3d\n",p[i])这句有点看不懂
这方法不对啊,比如说
你可以按算法走一遍,不是你给的那个
追问哦
你不是说先排列再排行吗
追答先把每行排好,再把每列排好
追问运行结果
你帮我看下我自己写的有什么错误行吗
追答把这段程序的结果贴给我吧
一定是算法错了,你再看看吧
追问嗯
追答1)核心思想是每行按顺序排列好,假定从小到大,然后,每列从小到大排序
2)假设数组为a[i_max][j_max]
核心代码
for(i=0;i<i_max;i++)
for(j=0;j<j_max-1;j++)
for(k=j+1;k<j_max;k++)
if(a[i][k]<a[i][j])
{ t=a[i][j];
a[i][j]=a[i][k];
a[i][k]=t;
}
for(j=0;j<j_max;j++)
for(i=0;i<i_max-1;i++)
for(k=i+1;k<i_max;k++)
if(a[k][j]<a[i][j])
{ t=a[i][j];
a[i][j]=a[k][j];
a[k][j]=t;
} 改过了,应该能用,希望能帮到你:-)
太感谢了
追答不用谢:-)