编写一个程序,用于处理校园歌手大赛中8号选手的评分情况。该程序应该从评委那里读取20个整数分数(范围在70到100之间),并将这些分数存储在一个数组中。然后,程序需要计算并输出去掉了最高分和最低分后剩余18个分数的平均值。请提供相应的代码实现和示例输出。
时间: 2024-10-21 22:08:55 浏览: 101
C++参赛结果处理
这是一个简单的Python程序,用于满足上述需求:
```python
def calculate_average_scores(scores):
# 检查输入是否合法,所有分数都在70到100之间
if not all(70 <= score <= 100 for score in scores):
print("所有分数应处于70到100之间")
return
# 去掉最高分和最低分
sorted_scores = sorted(scores)
highest_score = sorted_scores.pop()
lowest_score = sorted_scores.pop(0)
# 计算剩余18个分数的平均值
average = sum(sorted_scores) / len(sorted_scores)
return average
# 示例评委分数列表
scores = [85, 92, 96, 73, 90, 87, 95, 78, 82, 98, 84, 91, 89, 76, 93, 81, 79, 97, 88, 86]
average = calculate_average_scores(scores)
print(f"去掉最高分{highest_score}和最低分{lowest_score}后的8号选手平均得分是: {average}")
阅读全文