演讲比赛中有n个评委打分,编程求某个选手最终得分
时间: 2024-02-26 12:58:26 浏览: 55
好的,这是一个很常见的算法问题,可以用以下的方法计算选手得分:
1. 首先,定义一个整型数组 `scores`,长度为 `n`,表示所有评委的打分。
2. 然后,读入所有评委的打分,存入 `scores` 数组中。
3. 接着,对 `scores` 数组进行排序,去掉最高分和最低分,即第一个和最后一个元素。
4. 最后,计算剩下元素的平均值,即为选手的最终得分。
下面是具体实现的代码(假设评委打分为整数):
```python
n = int(input())
scores = []
for i in range(n):
score = int(input())
scores.append(score)
scores.sort()
scores = scores[1:-1] # 去掉最高分和最低分
avg_score = sum(scores) / len(scores)
print(avg_score)
```
希望这个算法对你有所帮助!
相关问题
演讲比赛中有n(n<=12)个评委打分,编程求某个选手最终得分(去掉一个最高分和一个最低分后其余分数的平均值)。
好的,这是一个简单的算法问题。我们可以先输入 n 个分数,然后求出最高分和最低分,再将其从总分中去除,最后求出剩余分数的平均值即可。
下面是一个 Python 代码示例:
```python
n = int(input())
scores = list(map(int, input().split()))
# 找出最高分和最低分
highest = max(scores)
lowest = min(scores)
# 去除最高分和最低分
scores.remove(highest)
scores.remove(lowest)
# 求剩余分数的平均值
average = sum(scores) / len(scores)
print(average)
```
希望这个答案能够解决您的问题。
用C语言编写,在某次比赛中有十个评委给选手打分请编程实现选手的最终得分按要求需要去掉十个评委中的一个最高分和一个最低分取剩余八位评委的平均值即为该选手的最终分
好的,这是一个比较简单的问题,可以使用C语言编写一个求平均数的程序,在输入评委打分后去掉最高分和最低分,再求剩余分数的平均值即可。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int scores[10];
int sum = 0, max = 0, min = 10; // 初始化sum为0,max为0,min为10
// 输入评委打分
for (int i = 0; i < 10; i++) {
printf("请输入第%d位评委的打分:", i+1);
scanf("%d", &scores[i]);
sum += scores[i]; // 求和
if (scores[i] > max) {
max = scores[i]; // 更新最高分
}
if (scores[i] < min) {
min = scores[i]; // 更新最低分
}
}
// 去掉最高分和最低分
sum = sum - max - min;
// 求平均值
float avg = (float)sum / 8;
printf("该选手的最终得分为:%.2f\n", avg); // 输出结果
return 0;
}
```
这个程序中,我们使用了一个数组来存储十位评委的打分,使用一个循环来输入这些打分,并且在输入的过程中更新最高分和最低分。然后我们使用一个变量sum来求和,去掉最高分和最低分后,再求平均值,最后输出结果。