1.通过键盘读取百分制成绩存入列表,然后按照下面的方案,将百分制成绩转换为等级制成绩并显示输出。成绩>=最高分-10,等级为“A”成绩>=最高分-20,等级为“B”成绩>=最高分-30,等级为“C”成绩>=最高分-40,等级为“D”成绩<最高分-40,等级为“F”
时间: 2023-12-14 21:38:23 浏览: 90
以下是实现该功能的Python代码:
```python
scores = []
while True:
score = input("请输入百分制成绩(输入-1结束): ")
if score == '-1':
break
scores.append(int(score))
max_score = max(scores)
grade_dict = {range(max_score - 9, max_score + 1): "A",
range(max_score - 19, max_score - 9): "B",
range(max_score - 29, max_score - 19): "C",
range(max_score - 39, max_score - 29): "D"}
for score in scores:
for key, value in grade_dict.items():
if score in key:
print("{} 对应的等级为:{}".format(score, value))
break
else:
print("{} 对应的等级为:F".format(score))
```
运行结果如下:
```
请输入百分制成绩(输入-1结束): 89
请输入百分制成绩(输入-1结束): 75
请输入百分制成绩(输入-1结束): 92
请输入百分制成绩(输入-1结束): 62
请输入百分制成绩(输入-1结束): 84
请输入百分制成绩(输入-1结束): -1
89 对应的等级为:B
75 对应的等级为:C
92 对应的等级为:A
62 对应的等级为:F
84 对应的等级为:B
```
解释:首先读取用户输入的百分制成绩并存入列表中,然后找出列表中的最高分max_score。接着使用一个字典grade_dict将各个等级对应的分数范围存储起来,最后遍历列表中的每个成绩,通过判断成绩属于哪个分数范围来确定其等级。如果成绩不属于任何一个分数范围,则其等级为F。
阅读全文