有一个班若干个学生考试的成绩表,由学号和成绩组成,将其组成一个字典如: {'1001':85,'1002':70,'1003':100,'1005':60,'1008':100}。 输出内容: 1. 按成绩从高到低输出成绩表字典; 2. 计算全班的平均分(精确到小数后两位); 3. 输出最高分的同学:学号:成绩。 输入格式: 按字典格式输入 输出格式: 输出成绩表字典、输出平均分、输出最高分。
时间: 2023-12-25 10:05:13 浏览: 48
好的,我来解答你的问题。根据你的要求,我将以 Python 语言来编写程序,代码如下:
```python
# 定义成绩表字典
score_dict = {'1001':85,'1002':70,'1003':100,'1005':60,'1008':100}
# 按成绩从高到低排序并输出成绩表字典
sorted_score_dict = dict(sorted(score_dict.items(), key=lambda item:item[1], reverse=True))
print("按成绩从高到低排序后的成绩表字典为:", sorted_score_dict)
# 计算全班平均分并输出
avg_score = round(sum(score_dict.values()) / len(score_dict), 2)
print("全班平均分为:", avg_score)
# 输出最高分同学的学号和成绩
max_score = max(score_dict.values())
for sid, score in score_dict.items():
if score == max_score:
print("最高分同学为:", sid, ":", score)
break
```
程序运行结果如下:
```
按成绩从高到低排序后的成绩表字典为: {'1003': 100, '1008': 100, '1001': 85, '1002': 70, '1005': 60}
全班平均分为: 83.0
最高分同学为: 1003 : 100
```
希望可以帮助到你!
阅读全文