【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;
} 
相关推荐
橘子真甜~20 小时前
C/C++ Linux网络编程13 - 传输层TCP协议详解(面向字节流和有连接)
linux·运维·服务器·c语言·网络·c++·tcp/ip
lightqjx20 小时前
【算法】双指针
c++·算法·leetcode·双指针
历程里程碑20 小时前
C++ 7vector:动态数组的终极指南
java·c语言·开发语言·数据结构·c++·算法
Bruce_kaizy21 小时前
C++树形数据结构————树状数组、线段树中“逆序对”的问题
开发语言·数据结构·c++
FMRbpm21 小时前
用栈实现队列
数据结构·c++·新手入门
添砖java‘’21 小时前
常见的进程间通信方式详解
linux·c++·操作系统·信息与通信·进程通信
AA陈超21 小时前
LyraStarterGame_5.6 Experience系统加载流程详细实现
c++·笔记·学习·ue5·虚幻引擎·lyra
一韦以航.1 天前
C【指针】详解(上)
c语言·数据结构·c++·算法
martian6651 天前
深入解析C++驱动开发实战:优化高效稳定的驱动应用
开发语言·c++·驱动开发
FMRbpm1 天前
用队列实现栈
数据结构·c++·新手入门