1.问题:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1〜100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现
2.思路:
- 获取分数,可以手动输入,也可以使用随机数(这里采用手动输入),分数存放在一个数组里,数据类型采用浮点型。
- 求出最高分和最低分。
- 求出总分,然后用总分减去最高分和最低分再除以8,得出选手得分。
3.程序流程图:
4.代码实现:
#include <iostream>
using namespace std;
const int N=11;
int main()
{
int a[N];
int min=0,max=0;
for(int i=0;i<10;i++){
cin>>a[i];
if(a[min]>a[i]&&i!=0)
{
min=i;
}
if(a[max]<a[i]&&i!=0)
{
max=i;
}
}
a[max]=0;
a[min]=0;
int count=0;
for(int i=0;i<10;i++){
count=count+a[i];
}
float p=count/8;
cout<<p<<endl;
return 0;
}