在体操竞技赛上,邀请了n位评委给出打分结果(1到100分),评分规则是从所有评委给分 的结果中去掉一个最高分和一个最低分后计算其余n-2个评委的平均分,作为这个选手的最 终得分,输入评委个数n,再输入n个评委打出的各个分数,最后输出这个选手的得分
时间: 2024-05-10 08:18:15 浏览: 15
以下是 Python 代码实现:
```python
n = int(input("请输入评委个数:"))
scores = []
for i in range(n):
score = int(input("请输入第{}位评委的分数:".format(i+1)))
scores.append(score)
# 去掉最高分和最低分
scores.remove(max(scores))
scores.remove(min(scores))
# 计算平均分
avg_score = sum(scores) / len(scores)
print("选手的最终得分为:{:.2f}".format(avg_score))
```
其中,我们使用了 `max` 函数和 `min` 函数分别找到了最高分和最低分,并使用了 `remove` 方法将其从列表 `scores` 中删除。接着,我们使用了 `sum` 函数将剩余分数相加,并用 `len` 函数求出个数,从而计算出了平均分。最后,我们使用了字符串格式化将结果输出,保留两位小数。
相关问题
用c语言编写一个程序,要求实现在体操竞技赛上,邀请了n位评委给出打分结果(1到100分),评分规则是从所有评委给分 的结果中去掉一个最高分和一个最低分后计算其余n-2个评委的平均分,作为这个选手的最 终得分,输入评委个数n,再输入n个评委打出的各个分数,最后输出这个选手的得分
以下是使用C语言编写的程序,可以实现上述功能:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入评委个数:");
scanf("%d", &n);
int scores[n];
printf("请输入各个评委的分数:");
for (int i = 0; i < n; i++) {
scanf("%d", &scores[i]);
}
// 计算总分
int sum = 0, max = scores[0], min = scores[0];
for (int i = 0; i < n; i++) {
sum += scores[i];
if (scores[i] > max) {
max = scores[i];
}
if (scores[i] < min) {
min = scores[i];
}
}
// 去掉最高分和最低分
sum -= max + min;
// 计算平均分并输出
double avg = (double)sum / (n - 2);
printf("该选手的得分为:%.2lf\n", avg);
return 0;
}
```
运行程序后,按照提示输入评委个数和各个评委的分数,程序会自动计算出该选手的得分并输出。注意,由于题目中要求保留两位小数,因此在输出时需要使用`%.2lf`格式化字符串。
体操比赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。 【输入描述】 第1行包含一个整数n (2<n<100),表示评委的人数, 第2行包含n个整数,表
示每个评委给出的分数。 【输出描述】 输出一个实数,表示该选手的得分,精确到小数点后2位。 【输入样例】 7 9 8 9 7 6 8 9 【输出样例】 8.33
以下是Python代码实现:
```python
n = int(input()) # 评委人数
scores = list(map(int, input().split())) # 各评委打分
# 去掉一个最高分和一个最低分
scores.remove(max(scores))
scores.remove(min(scores))
# 计算平均得分
avg_score = sum(scores) / len(scores)
# 输出得分
print('%.2f' % avg_score)
```
以下是Java代码实现:
```java
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(); // 评委人数
int[] scores = new int[n];
for (int i = 0; i < n; i++) {
scores[i] = sc.nextInt(); // 各评委打分
}
// 去掉一个最高分和一个最低分
Arrays.sort(scores);
int sum = 0;
for (int i = 1; i < n - 1; i++) {
sum += scores[i];
}
// 计算平均得分
double avgScore = (double) sum / (n - 2);
// 输出得分
System.out.printf("%.2f", avgScore);
}
}
```