从键盘输入某班学生信息,包括学号,性别和成绩,以“0 N 0 ”为结束标志,统计并输出男,女生的人数及该班学生的平均成绩
时间: 2024-09-27 19:02:59 浏览: 55
当你需要从用户键盘输入来收集某班学生的信息,通常会采用循环结构来不断读取数据,直到遇到指定的结束标记"0 N 0"。这是一个简单的Python示例:
```python
male_count = 0
female_count = 0
total_score = 0
while True:
student_info = input("请输入学号、性别和成绩,格式为数字空格字符空格分数,输入 '0 N 0' 结束:")
# 检查是否达到结束标志
if student_info == "0 N 0":
break
data = student_info.split()
if len(data) != 3 or not data[1].isdigit() or not data[2].isdigit():
print("无效输入,请重新尝试。")
continue
# 更新计数和总成绩
score = float(data[2])
total_score += score
if data[0] == "男":
male_count += 1
elif data[0] == "女":
female_count += 1
else:
print("未知的性别,请检查输入。")
continue
# 计算平均成绩
average_score = total_score / (male_count + female_count) if male_count + female_count > 0 else 0
print(f"男生人数:{male_count},女生人数:{female_count}")
print(f"班级平均成绩:{average_score}")
```
在这个程序中,我们首先初始化男性和女性的学生计数以及总分。然后在`while`循环中持续请求输入,如果输入合法则更新计数和总分,遇到错误则提示用户重新输入。最后,计算并输出男女生人数和班级平均成绩。
阅读全文