从键盘输入3个同学4门课的成绩,将其按平均分从高到低排序输出
从键盘输入3个同学4门课的成绩,将其按平均分从高到低排序输出。输入格式:
输入3个同学4门课的成绩
输出格式:
按平均分从高到低排序输出
输入样例:
89 78 80 76 88 78 75 90 99 92 100 89[回车]
输出样例:
99,92,100,89[回车]
88,78,75,90[回车]
89,78,80,76[回车]
编的: (想问一下:我编的交换元素的那一段可以实现吗?我的VC上元素并没有交换,为什么/)
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct fen
{ int x;
int b[100];
}a[10];
int main()
{ int t,x=1,n,i,j,m;
double c,s=0;
for(i=1;i<=3;i++)
for(j=1;j<=4;j++)
{
scanf("%d",&(a[i].b[j]));
}
for(i=1;i<=3;i++)
{for(j=1;j<=4;j++)
s+=a[i].b[j];
a[i].x=s;
}
for(i=1;i<=2;i++)
for(j=1;j<=2-i;j++)
if(a[j].x<a[j+1].x)
{m=1;
\\交换a[j]和a[j+1]中数
while(m<=4)
{t=a[j].b[m];
a[j].b[m]=a[j+1].b[m];
a[j+1].b[m]=t;
m++;
}
}
for(j=1;j<=3;j++)
{ for(i=1;i<=3;i++)
printf("%d ",a[j].b[i]);
printf("%d\n",a[j].b[i]);
}
return 0;
}