输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90-100分为A,80-89为B,70-79为C,60-69为D,60分以下为 E。要求: (1)分别用if 语句和switch语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩输出出错信息。
时间: 2024-10-25 15:03:17 浏览: 24
当然,这里我会演示如何分别用`if`语句和`switch`语句来实现这个成绩等级转换的功能,并包含输入检查部分。
**使用if语句实现:**
```python
def grade_if(score):
if score < 0 or score > 100:
return "错误:成绩输入不合理"
if score >= 90:
return 'A'
elif score >= 80:
return 'B'
elif score >= 70:
return 'C'
elif score >= 60:
return 'D'
else:
return 'E'
score = float(input("请输入百分制成绩:"))
print(grade_if(score))
```
**使用switch语句(在一些支持switch的编程语言如Python的`if-elif-else`结构类似,但Python本身不直接支持switch):**
```python
def grade_switch(score):
if score < 0 or score > 100:
return "错误:成绩输入不合理"
grades = {
100: 'A',
90: 'A',
80: 'B',
70: 'C',
60: 'D',
}
for grade, boundary in grades.items():
if score >= boundary:
return grade
print(grade_switch(float(input("请输入百分制成绩:"))))
```
阅读全文