上机内容:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:
去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。
上机目的:控制结构综合
我的程序:
运行结果:
去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。
上机目的:控制结构综合
我的程序:
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 青岛农业大学理信学院
* All rights reserved.
* 文件名称:大奖赛记分.cpp
* 作 者:幻影行者
* 完成日期:2013 年 7 月 30 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:略
* 问题描述:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:
* 去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。
* 程序输出:略
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
int i,n=10; //i为评委的编号,n为评委的个数,可随时更改
float score,max_score=-1,min_score=101,total_score=0,final_score;//score为评委的打分,max_score,min_score为评委打的最高最低分,
//total_score选手总分,final_score选手最后得分
for(i=1;i<=n;++i)
{
cout<<"请输入第"<<i<<"个评委给选手的打分(1~100):"<<endl;
cin>>score;
if(max_score<score) //人为设置max_score初值为-1,通过每次比较,最终找到最高分
max_score=score;
if(min_score>score) //人为设置min_score初值为101,通过每次比较,最终找到最低分
min_score=score;
total_score+=score; //总分
}
final_score=(total_score-max_score-min_score)/(n-2); //计算选手最后得分
cout<<"去掉一个最高分:"<<max_score<<endl;
cout<<"去掉一个最低分:"<<min_score<<endl;
cout<<"选手最后得分:"<<final_score<<endl;
return 0;
}
运行结果: