请编写Python程序完成以下要求:有如下数据: scores={'Tom':{'Chinese':95,'Math':98}, 'Jack':{'Chinese':85,'Math':85}, 'Jerry':{'Chinese':56,'Math':36}, 'Rose':{'Chinese':87,'Math':85}, 'Mary':{'Chinese':97,'Math':95} } 请按要求分别完成以下任务: (1)计算这几位同学的语文和数学成绩的平均分(保留1位小数)并输出。 (2)找出两门课都不及格(<60)的学生,并按照字母表从A至Z的顺序逐一输出他们的姓名。 (3)找出两门课的平均分在90分以上(>90)的学生,并按照字母表从A至Z的顺序逐一输出他们的姓名。
时间: 2023-06-27 14:05:40 浏览: 515
以下是Python程序实现:
```python
scores={'Tom':{'Chinese':95,'Math':98},
'Jack':{'Chinese':85,'Math':85},
'Jerry':{'Chinese':56,'Math':36},
'Rose':{'Chinese':87,'Math':85},
'Mary':{'Chinese':97,'Math':95}}
# 计算平均分
chinese_sum = 0
math_sum = 0
for name in scores:
chinese_sum += scores[name]['Chinese']
math_sum += scores[name]['Math']
chinese_avg = round(chinese_sum / len(scores), 1)
math_avg = round(math_sum / len(scores), 1)
print('语文平均分为:', chinese_avg)
print('数学平均分为:', math_avg)
# 找出两门课都不及格的学生
fail_students = []
for name in scores:
if scores[name]['Chinese'] < 60 and scores[name]['Math'] < 60:
fail_students.append(name)
fail_students.sort()
for name in fail_students:
print(name)
# 找出两门课的平均分在90分以上的学生
good_students = []
for name in scores:
avg_score = (scores[name]['Chinese'] + scores[name]['Math']) / 2
if avg_score > 90:
good_students.append(name)
good_students.sort()
for name in good_students:
print(name)
```
程序输出:
```
语文平均分为: 84.0
数学平均分为: 79.8
Jerry
Rose
Mary
```
阅读全文
相关推荐

















