/*
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作 者: 申玉迪
* 完成日期:2013 年 11 月 14 日
* 版 本 号:v1.0
* 问题描述:歌手大赛问题
*/
#include <iostream>
using namespace std;
void calscore(double x)
{
double f,a=0,b=10,s=0,z,y;
for(int i=1;i<=x;++i)
{
cout<<"第"<<i<<"位评委打分:";
cin>>f;
if(f>10||f<0)
{
cout<<"第"<<i<<"位评委打分:";
cin>>f;
}
a=(f>a)?f:a;//引入a是要求出最大值
b=(f>b)?b:f;//引入b是要求出最小值
s=s+f;//s表示不去掉最高最低分时的总分数
}
y=s-a-b;//y是去掉最高最低的总分数
z=y/(x-2);//最终得分
cout<<"去掉一个最高分"<<a<<"分"<<'\t'<<"去掉一个最低分"<<b<<"分"<<endl;
cout<<"当前选手最终得分:"<<z;
cout<<endl;
}
int main()
{
int x;
char choise;
cout<<"输入评委人数:";
cin>>x;
do
{
cout<<"请输入选手成绩(1——10)"<<endl;
calscore(x);
cout<<"******************* SUCCESS ***********************"<<endl;
cout<<"按 N 退出,其他键继续....";
cin>>choise;
}while(choise!='n'&&choise!='N');
return 0;
}
十一周——歌手大赛
最新推荐文章于 2022-08-13 19:16:09 发布