实验目的:学会使用循环控制语句解决实际问题
实验内容:编写大奖赛用的计分程序
* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作
* 完成日期:
* 版本号:
* 对任务及求解方法的描述部分
* 输入描述:选手的原始成绩
* 问题描述:各评委打出的成绩介于0-10之间,计分规则为去掉一个最高分和一个最低分后取平均。其他要求:输出错误要能马上重新输入;评委人数在程序中的修改要尽可能方便;计算完一位选手的成绩后可以连续地计算下一位选手的成绩。
* 程序输出:各位选手的最高分、最低分及最终成绩
* 问题分析:……
* 算法设计:……
* 程序头部的注释结束(此处也删除了斜杠)
#include<iostream>
using namespace std;
int main()
{
char ch;
double a,min=10,max=0,sum=0,i=0,average=0;
do
{
cout<<"请输入选手的成绩(0-10)"<<endl;
for(i=1;i<=7;i++)
{//输入评委打分,并求得最大和最小分数
cout<<"第"<<i<<"位评委给分:";
cin>>a;
if(a<0||a>10)
i--;
else
{
sum=sum+a;
if (a > max ) max = a;
if (a < min ) min = a;
}
}
average=(sum-max-min)/5;
cout<<"去掉一个最高分:"<<max<<endl;
cout<<"去掉一个最低分:"<<min<<endl;
cout<<"当前选手的最后得分为:"<<average<<endl;
cout<<"********************SUCCESS**********************"<<endl;
cout<<"按n退出,按其他键继续"<<endl;
getchar();
ch=getchar();
if (ch=='n'||ch=='N')
break;
}
while (1);//循环评分
return 0;
}