c++在黄金城里城主举办了一场演讲比赛评选最有才华的人很多选手都参加了比赛。每次演讲结束后都有n名裁判对他们的表现进行打分评委数量在3人以上每个人打出的分数都是一个100以内的小数。为了保证公平最后的结果是去掉全部评分的最高分和最低分取平均分并且还要将剩余的有效评分从低到高输出在屏幕上提供给观众查看。请你来编写这个程序吧。【提示】利用排序函数排序后可以只把第2到第n-1项求和并只输出第2到第n-1
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
vector<double> scores(n);
for (int i = 0; i < n; i++)
{
cin >> scores[i];
}
sort(scores.begin(), scores.end());
double sum = 0;
for (int i = 1; i < n - 1; i++)
{
sum += scores[i];
}
double average = sum / (n - 2);
cout << average << endl;
for (int i = 1; i < n - 1; i++)
{
cout << scores[i] << " ";
}
return 0;
}
原文地址: https://www.cveoy.top/t/topic/jaih 著作权归作者所有。请勿转载和采集!