代码修改如下,如有帮助,请采纳一下,谢谢。
#include <stdio.h>
#define N 10
void Sort(int s[][N],int a,int b);
int main()
{
int str[N][N],i,j,a,b;
scanf("%d %d",&a,&b);
if(a <1 ||b<1 ||a>10 ||b>10) return 1;
for(i = 0; i < a;i++)
for(j = 0;j < b;j++)
scanf("%d",&str[i][j]);
Sort(str,a,b);
return 0;
}
void Sort(int s[][N],int a,int b)
{
int k = 0,i,j;
int maxindex;
for (k = 0;k< a;k++)
{
//进行N-1轮选择
for(i=0; i<b-1; i++)
{
maxindex = i;
//找出第i大的数所在的位置
for(j=i+1; j<b; j++)
{
if(s[k][j] > s[k][maxindex])
{
maxindex = j;
}
}
//将第i大的数,放在第i个位置;如果刚好,就不用交换
if( i != maxindex)
{
int temp = s[k][i];
s[k][i] = s[k][maxindex];
s[k][maxindex] = temp;
}
}
}
for (i = 0; i < a;i++)
{
for(j = 0;j < b;j++)
printf("%d ",s[i][j]);
printf("\n");
}
}