1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 在程序大奖赛中 有10个评委为参赛的选手打分 分数为1~100分。选手最后得分为:去掉

在程序大奖赛中 有10个评委为参赛的选手打分 分数为1~100分。选手最后得分为:去掉

时间:2022-08-20 07:19:05

相关推荐

在程序大奖赛中 有10个评委为参赛的选手打分 分数为1~100分。选手最后得分为:去掉

这个是我们程序设计的一个习题,顺便记录一下。我是刚学习C++的小白,如果下面有什么不对或者不合理的地方还请大家在评论区指出。

首先我用rand()函数模拟一位评委给出一个分数然后用for循环十次表示十个评委进行打分,存储到一个数组,然后求其总分之后我遍历数组依次比较出最大值和最小值用总分减去最大值和最小值除以8得到最后的平均分数我们题目要求把结果存到文件中,因为我对c++存储文件不是特别了解,所以下面用了很多笨办法

下面附上我写的代码:

#include <iostream>#include <stdlib.h>#include<iomanip>#include<fstream>using namespace std;int main(){int number;//定义数字,作为参赛人数cout << "请输入参赛选手人数" << endl;cin >> number;//输入参赛人数ofstream ofile;//定义输出文件ofile.open("d:\\Competition_score.txt");//作为输出文件打开ofile << "序号成绩一成绩二成绩三成绩四成绩五成绩六成绩七成绩八成绩九成绩十总分最终成绩" << endl; //标题写入文件for (int n = 0; n < number; n++)//用for循环来模拟多位参赛选手{int competitor_grade[10];//定义一个数组来储存十个成绩int sum_judge_ten = 0; //定义一个sum_judge_ten来储存十位评委给的总分float sum_judge_eight = 0; //定义一个sum_judge_eight来储存去掉最高分和最低分的总成绩ofile << n + 1<<""; //表示序号for (int i = 0; i < 10; i++) //在for循环中用rand()来模拟十位评委给的随机分数{competitor_grade[i] = rand() % 100+1;//用数组储存分数,rand()表示随机数,%100表示分数在0~100之间ofile <<" "<< competitor_grade[i]<<""; //将每一个分数写入文件sum_judge_ten += competitor_grade[i];}int max = competitor_grade[0], min = competitor_grade[0];for (int i = 0; i < 10; i++)//用for循环比较出最大值和最小值{if (max < competitor_grade[i])max = competitor_grade[i];if (min > competitor_grade[i])min = competitor_grade[i];}sum_judge_eight = (sum_judge_ten - min - max) / 8.0;ofile << sum_judge_ten << " "<<sum_judge_eight << endl;}system("pause");}

后面附上一张结果:

在程序大奖赛中 有10个评委为参赛的选手打分 分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。