- /*
- * Copyright (c) 2014, 烟台大学计算机学院
- * All rights reserved.
- * 文件名称:test.cpp
- * 作 者:刘畅
- * 完成日期:2014年 11 月 3 日
- * 版 本 号:v1.0
- *
- * 问题描述:在歌手大奖赛中,有10个评委为参赛的选手打分,分数为0~10分.选手最后的得分为:去掉一个最高分和一个最低分后,取其余8个分数的平均值。;
- * 输入描述:n代表评委代号,也代表输入次数,x代表分数 ;
- * 程序输出:输出去掉最大值和最小值后的平均分sum;
- */
#include <iostream> using namespace std; int main() { do { char key; int n; double min = 10, max = 0, sum = 0, x; cout << "请输入选手的成绩(0~10)" << endl; for (n = 1; n <= 10; n++) { cout << "第" << n << "位评委给分:"; cin >> x; sum = sum + x; if (max <= x) max = x; if (min >= x) min = x; } cout << "减去一个最高分:" << max << ", " << "减去一个最低分:" << min << "." << endl; sum = (sum - max - min) / 8; cout << "当前选手的最后得分是:" << sum << endl; cout << "********************SUCCESS********************" << endl; cout << "按 N 退出,其他键继续...Y"<<endl; cin >> key; if (key == 'N') break; else continue; cout<<endl; } while (1); return 0; }
- 运行结果:
- 知识点总结:
- 这里的难点主要是处理好哪些变量需要用double定义,我在运行时得出的结果一直有问题,虽然知道问题主要出在数据类型上,也还是修改了好几次才搞定。然后就是学会处理最大值和最小值的问题,虽然可以调用函数,但对于输入的数值较多的话,书本上的max函数类型在这里不适用。
- 学习心得:
- 在做这个的时候本来是连同后面的拓展一起做得,所以提前把“按N退出,其他键继续....Y”也写了进去;后面再发一篇关于这个拓展的,不要介意我刷积分啊
第10周项目4-大奖赛计分
最新推荐文章于 2024-11-12 15:18:48 发布