C语言-实训任务-冒泡排序
任务要求
某歌手大赛,共有10个评委给歌手打分,分数采用百分制,去掉一个最高分, 去掉一个最低分,然后取平均分,得到歌手的成绩。编程序实现。
代码实现
#include <stdio.h>
/**某歌手大赛,共有10个评委给歌手打分,分数采用百分制,去掉一个最高分,
去掉一个最低分,然后取平均分,得到歌手的成绩。编程序实现。*/
int main(){
float score[11],t,average,sum;
int i,j;
for(i=0;i<10;i++){
printf("请输入第%d次的评分结果", (i+1));
scanf("%f", &score[i]);
}
//使用冒泡排序对评分按从小到大进行排序
for(i=0;i<9;i++){
for(j=0;j<9-i;j++){
if(score[j]>score[j+1]){
t = score[j+1];
score[j+1] = score[j];
score[j] = t;
}
}
}
//累加第二名到第九名歌手的平分
for(i=1;i<9;i++){
sum+=score[i];
}
//计算评分平均值
average=sum/8;
printf("sum=%f\n", sum);
printf("歌手的成绩是%f\n", average);
}