第十周项目四 大奖赛计分(拓展版)

来源:互联网 发布:shopee搬家软件 编辑:程序博客网 时间:2024/05/17 04:25
/*   * Copyright (c) 2014, 烟台大学计算机学院   * All rights reserved.   * 文件名称:test.cpp   * 作    者:刘佳琦    * 完成日期:2014年 11 月 3 日   * 版 本 号:v1.0   *   * 问题描述:在歌手大奖赛中,有10个评委为参赛的选手打分,分数为0~10分。选手最后得分为:去掉一个最高分和一个最低分后,取其余8个分数的平均值。请编写一个程序实现这个程序。  * 输入描述:十个评委分数  * 程序输出: 最后得分  */   #include <iostream>using namespace std;int main( ){    int n;    int i;    char a;    double ave, score, sum, max, min;    cout<<"请输入评委人数:";    cin>>n;    do    {        i=1;        max=-1;        min=11;        sum=0;        cout<<"请输入选手的成绩(0-10)"<<endl;        do        {            cout<<"第"<<i<<"位评委给分:";            cin>>score;            if(score<0||score>10)                continue;            sum+=score;            if(max<score)                max=score;            if(min>score)                min=score;            i++;        }        while(i<=n);        ave = (sum-max-min)/(n-2);        cout<<"减去一个最高分:"<<max<<",";        cout<<", 减去一个最低分:"<<min<<"."<<endl;        cout<<"当前选手的最后得分是:"<<ave<<endl;        cout<<"******************* SUCCESS ***********************"<<endl;        cout<<"按任意键计算下一位选手的成绩,退出请选择N";        cin>>a;    }    while(a!='N');    return 0;}

运行结果:


知识点总结:do whlie循环结构的运用,因为要重新在输入一次,所以大循环套一个小循环。

学习心得:do while循环结构在前段时间运用得还不够熟练,这次还想直接用if结构,结束时用的break,发现错误,这才想起break是防止死循环的,用于循环语句和switch语句,只单单用if不是循环,导致失败。

0 0
原创粉丝点击