设计程序,逐个输入若干名学生的成绩保存到列表listl中,直至输入-1 结束(参考下面代码循环输入)。统计优、良、中、及格和不及格的人数 并输出。
时间: 2024-09-19 12:04:00 浏览: 40
设计这样的程序,可以按照以下步骤进行:
首先,创建一个空列表 `list1` 来存储学生的成绩,以及五个变量 `count_pass`, `count良好`, `count_medium`, `count_fail`, 和 `count_unpass` 分别用于记录各等级的学生人数。
然后编写一个无限循环,提示用户输入学生分数,并检查是否输入 -1。如果输入 -1,则跳出循环;否则将输入的成绩添加到 `list1` 中并更新相应的计数器。这里是一个简单的 Python 示例代码:
```python
# 初始化数据结构和计数器
scores = []
count_pass, count_good, count_medium, count_fail, count_unpass = 0, 0, 0, 0, 0
while True:
score = int(input("请输入学生的成绩(输入-1结束):"))
if score == -1:
break
scores.append(score)
# 根据成绩范围更新计数器
if score >= 90:
count_pass += 1
elif 80 <= score < 90:
count_good += 1
elif 60 <= score < 80:
count_medium += 1
elif 60 > score:
count_fail += 1
else:
count_unpass += 1 # 如果输入不是整数或者成绩不在上述范围内,算作不及格
# 输出统计结果
print(f"优:{count_pass}人")
print(f"良:{count_good}人")
print(f"中:{count_medium}人")
print(f"及格:{count_fail}人")
print(f"不及格:{count_unpass}人")
```
在这个程序中,用户会一直输入成绩直到输入 `-1` 为止。输入的每个成绩会被分类并增加相应等级的计数器,最后显示各个等级的人数。
阅读全文