1. 某学校举行歌唱比赛,共有5个评委为每个参賽选手进行打分,统计每个选手的平均分。 请编写程序,输入每个选手的编号和每个评委对该选手的打分,输入完毕后,系统计算 并打印每个选手的平均分。 要求:需要定义一个计算选手平均分的西数:西数输入为选手编号和评委的分数,输出 为一不字典类型的变量用于存储选手编号和平均分。。
时间: 2024-03-15 11:44:39 浏览: 174
C语言课程设计-基于c语言实现的歌唱比赛评分系统源码+详细代码注释.zip
好的,我可以帮你实现这个程序。以下是 Python 代码:
```python
def calculate_average_score(scores):
# 计算平均分
avg_score = sum(scores) / len(scores)
return {'编号': scores[0], '平均分': avg_score}
# 主程序
results = {}
while True:
try:
# 输入选手编号和评委打分
inputs = input('请输入选手编号和评委的打分(用空格分隔),输入 q 结束:')
if inputs == 'q':
break
scores = list(map(int, inputs.split()))
if len(scores) != 6:
print('请输入 5 个评委的分数!')
continue
player_id = scores.pop(0)
# 更新结果字典
if player_id not in results:
results[player_id] = []
results[player_id].append(scores)
except ValueError:
print('输入格式错误,请重新输入!')
# 输出结果
for player_id, scores in results.items():
avg_score = calculate_average_score(scores)
print('选手 {} 的平均分为:{:.2f}'.format(player_id, avg_score['平均分']))
```
这个程序会让你输入每个选手的编号和每个评委的打分,输入完毕后会计算每个选手的平均分并输出。注意,输入的格式应该是 `编号 打分1 打分2 打分3 打分4 打分5`,其中编号和打分之间用空格分隔。你可以输入 `q` 结束程序。
阅读全文