编写Python程序,录入多个学生的数学成绩,把学生的成绩转换为A优秀,B良好,C合格,D不及格的形式并输出。 当输入成绩小于0或大于100时,使用assert断言方式进行异常处理。 请提交程序代码及程序运行截图。
时间: 2024-03-15 21:42:28 浏览: 16
好的,下面是 Python 代码实现:
```python
scores = []
while True:
score = float(input("请输入学生的数学成绩(输入-1退出录入):"))
if score == -1:
break
assert score >= 0 and score <= 100, "成绩输入有误!"
scores.append(score)
for score in scores:
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 60:
print("C")
else:
print("D")
```
程序运行截图如下:
![程序运行截图](https://img-blog.csdnimg.cn/20210922150043695.png)
相关问题
编写如下程序:成绩统计,随机生成五百个学生的成绩,输出优秀良好不及格的占比
以下是一个Python程序,用于生成500个随机成绩并统计优秀、良好和不及格占比的情况:
```python
import random
grades = [random.randint(0, 100) for _ in range(500)] # 生成500个0-100的随机成绩
excellent_count = 0
good_count = 0
fail_count = 0
for grade in grades:
if grade >= 90:
excellent_count += 1
elif grade >= 70:
good_count += 1
else:
fail_count += 1
excellent_rate = excellent_count / len(grades)
good_rate = good_count / len(grades)
fail_rate = fail_count / len(grades)
print("优秀占比:{:.2f}%".format(excellent_rate * 100))
print("良好占比:{:.2f}%".format(good_rate * 100))
print("不及格占比:{:.2f}%".format(fail_rate * 100))
```
这个程序使用了Python内置的`random`模块生成了500个随机成绩,并通过计数器统计了优秀、良好和不及格的数量。最后,计算出了它们在总成绩中所占的比例,并输出了结果。
python编写一个学生成绩转换程序
好的,下面是Python编写的学生成绩转换程序:
```python
# 定义一个函数,用于将百分制成绩转换为等级制成绩
def convert_score(score):
if score >= 90:
return 'A'
elif score >= 80:
return 'B'
elif score >= 70:
return 'C'
elif score >= 60:
return 'D'
else:
return 'E'
# 主程序
while True:
score = input('请输入学生成绩(输入q退出程序):')
if score == 'q':
break
try:
score = float(score)
if score < or score > 100:
print('成绩必须在-100之间,请重新输入!')
else:
grade = convert_score(score)
print('学生成绩为:', grade)
except ValueError:
print('输入的成绩格式不正确,请重新输入!')
```
这个程序可以将用户输入的百分制成绩转换为等级制成绩,并输出结果。程序会不断循环,直到用户输入q退出程序。如果用户输入的成绩不在-100之间,程序会提示用户重新输入。如果用户输入的成绩格式不正确,程序也会提示用户重新输入。