一道C语言的编程题 帮忙~
题目内容输入一个班10个学生的学号和每个学生考试三门功课(数学、英语、计算机基础)的成绩。编程计算出每个学生的总分和平均分,并按学生成绩优劣排序,最后打印一张按高分到低分...
题目内容
输入一个班10个学生的学号和每个学生考试三门功课(数学、英语、计算机基础)的成绩。编程计算出每个学生的总分和平均分,并按学生成绩优劣排序,最后打印一张按高分到低分名次排序的成绩单。要求:
1)排序用一个函数实现。
2)打印的成绩单表项包括:序号,学号、数学、英语、计算机、总分、平均分。
怎末编呢?
排序要用函数来表示 展开
输入一个班10个学生的学号和每个学生考试三门功课(数学、英语、计算机基础)的成绩。编程计算出每个学生的总分和平均分,并按学生成绩优劣排序,最后打印一张按高分到低分名次排序的成绩单。要求:
1)排序用一个函数实现。
2)打印的成绩单表项包括:序号,学号、数学、英语、计算机、总分、平均分。
怎末编呢?
排序要用函数来表示 展开
2个回答
展开全部
int a[10],b[10],c[10],e[10],x[10],y;
for(i=1;i<=10;i++){
scanf("%d,%e,%f",&a[i],&b[i],&c[i]);
x[i]=a[i]+b[i]+c[i];
}
for(i=1;i<=10;i++){
for(j=10;j<=i;j--){
if x[j]>x[j-1] then
y=x[j];
x[j]=x[j-1];
x[j-1]=y;
y=e[j];
e[j]=e[j-1];
e[j-1]=y;
}
}
for(i=1;i<=10;i++){
printf("%d,%e,%f,%g,%h,%j,%k\n",i,e[i],a[i],b[i],c[i],x[i], x[i]/3);
}
a[i],b[i],c[i]为三门功课成绩,e[i]是学号,x[i]是总分
for(i=1;i<=10;i++){
scanf("%d,%e,%f",&a[i],&b[i],&c[i]);
x[i]=a[i]+b[i]+c[i];
}
for(i=1;i<=10;i++){
for(j=10;j<=i;j--){
if x[j]>x[j-1] then
y=x[j];
x[j]=x[j-1];
x[j-1]=y;
y=e[j];
e[j]=e[j-1];
e[j-1]=y;
}
}
for(i=1;i<=10;i++){
printf("%d,%e,%f,%g,%h,%j,%k\n",i,e[i],a[i],b[i],c[i],x[i], x[i]/3);
}
a[i],b[i],c[i]为三门功课成绩,e[i]是学号,x[i]是总分
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询