问题及代码:
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:陈旭
* 完成日期:2014年 11 月 4 日
* 版 本 号:v1.0
*
* 问题描述: 多位评委为参赛选手打分,求去掉一个最高分合一个最低分后,剩余分数的平均值
* 输入描述: 多个整数分数
* 程序输出: 对应选手的最后得分
*/
#include <iostream>
#include <iomanip>
#include <cstdio>
using namespace std;
int main()
{
6char choice;
do
{
int i,j;
cout <<"请输入评委人数:";
cin >>j;
double score,max,min,average,all;
cout <<"请输入选手的成绩(0-10)"<<endl;
all=0,max=-1,min=11,i=0;
do
{
i++;
cout <<"第"<<i<<"位评委的得分:";
cin >>score;
all=all+score;
if(score>max)
max=score;
if(score<min)
min=score;
}
while(i<j);
cout <<"减去一个最高分:"<<max<<",减去一个最低分:"<<min<<"。"<<endl;
average=(all-max-min)/(j-2);
cout << "当前选手的最后得分是:"<<average<< endl;
cout <<"*****************SUCCESS******************"<<endl;
cout <<"按N退出,其他键继续..."<<endl;
cin >>choice;
cout <<endl;
}
while(choice!='N' && choice!='n');
return 0;
}
运行结果:
知识点总结:
通过这个程序的编写,让嵌套语句更加显示其作用,有利于我们以后的更复杂程序的实践。
学习心得:
一开始怎么弄都出现error:'choice' was not declared in this scope.然后一直不知道怎么弄的,后来把贺老师的程序运行了一遍,发现也是错的,原来老师都跟我犯了一样的错误,后来经过多次查看小伙伴的才知道,原来前面choice前面要加一个char,下次一定得注意了。