void GetData(int[3][5]);
int Findmax(int[3][5]);
void sort(int*,int);
int main()
{ int a[3][5];
GetData(a);
sort(a[Findmax(a)],5);
return 0;
}
void GetData(int a[3][5])
{ int i,j;
for(i=0; i<3; i++)
{ printf("輸入%d班所有成績:\n",i+1);
for(j=0; j<5; j++)scanf("%d",&a[i][j]);
}
}
int Findmax(int a[3][5])
{ int i,j,maxi,maxj;
for(i=0,maxi=0,maxj=0; i<3; i++)
for(j=0; j<5; j++)
if(a[maxi][maxj]<a[i][j])
{ maxi=i;
maxj=j;
}
printf("成績的最高分學生是第%d個班的第%d個同學\n",maxi+1,maxj+1);
return maxi;
}
void sort(int *p, int n)
{ int a,b,c,t,exchange;
for(a=0; a<n-1; ++a)
{ exchange=0;
c=a;
t=p[a];
for(b=a+1; b<n; ++b)
if(p[b]<t)
{ c=b;
t=p[b];
exchange=1;
}
if(exchange)
{ p[c]=p[a];
p[a]=t;
}
}
printf("最高分學生所在班級的所有學生成績:\n");
for(a=0; a<n; a++)
printf("%d ",p[a]);
}