【C++题解】1168. 歌唱比赛评分

问题:1168. 歌唱比赛评分

类型:数组找数


题目描述:

四(1) 班要举行一次歌唱比赛,以选拔更好的苗子参加校的歌唱比赛。评分办法如下:设 N 个评委,打 N 个分数( 0≤每个分数≤10 ),去掉一个最高分,去掉一个最低分,剩下的评委的平均分即为该选手的最后得分。

但是选手太多了,靠人工计算每个选手的得分太慢太麻烦。你能不能帮帮他们,设计一个程序让计算机来算出选手的最后得分呢?

输入:

第一行为一个整数 N (5≤N≤10);

第二行为 N 个整数 Ai (0≤Ai≤10 )。

输出:

选手的最后得分(保留两位小数)。

样例:

输入:

cpp 复制代码
5
5 6 7 8 9

输出:

cpp 复制代码
7.00

完整代码如下:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
	//一、分析问题
	//已知:N 个分数(5≤N≤10);
	//未知:该选手的最后得分(保留两位小数)。
	//关系:	去掉一个最高分,去掉一个最低分,剩下的评委的平均分即为该选手的最后得分。
	//二、定义变量(已知、未知、关系)
	int n,a[11],mmax=INT_MIN,mmin=INT_MAX; 
	double r=0.0;
	//三、输入已知
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
		r+=a[i];
		if(a[i]>mmax) mmax=a[i];
		if(a[i]<mmin) mmin=a[i];
	}
	//四、根据关系计算
	r=(r-mmax-mmin)/(n-2);
	//五、输出未知 
	cout<<fixed<<setprecision(2)<<r;
	return 0;
} 
相关推荐
oioihoii9 分钟前
回归测试:软件演进中的质量守护神与实践全指南
c++
十五年专注C++开发1 小时前
CMake基础: 在release模式下生成调试信息的方法
linux·c++·windows·cmake·跨平台构建
点云SLAM1 小时前
C++(C++17/20)最佳工厂写法和SLAM应用综合示例
开发语言·c++·设计模式·c++实战·注册工厂模式·c++大工程系统
Q741_1471 小时前
C++ 队列 宽度优先搜索 BFS 力扣 662. 二叉树最大宽度 每日一题
c++·算法·leetcode·bfs·宽度优先
csdn_aspnet1 小时前
C++跨平台开发:工程难题与解决方案深度解析
c++
余衫马2 小时前
在Win10下编译 Poppler
c++·windows·qt·pdf·poppler
王老师青少年编程2 小时前
2024年3月GESP真题及题解(C++七级): 俄罗斯方块
c++·题解·真题·gesp·csp·俄罗斯方块·七级
oioihoii2 小时前
拆解融合:测试开发,一个关于“更好”的悖论
c++
xiaoqider2 小时前
C++模板进阶
开发语言·c++
移幻漂流2 小时前
C/C++并发编程详解:如何写出优秀的并发程序
c语言·开发语言·c++