python输入10名同学的成绩并统计优良差
时间: 2024-10-13 11:13:11 浏览: 11
在Python中,我们可以创建一个简单的程序来输入10名同学的成绩,并统计优、良、及格和不及格的人数。这里我们假设“优”为90分以上,“良”为60到89分,“及格”为60分及以上,“不及格”为60分以下。以下是步骤:
```python
# 初始化计数器
优秀_count = 0
良好_count = 0
及格_count = 0
不及格_count = 0
# 循环获取10名学生的成绩
for i in range(10):
score = int(input(f"请输入第{i+1}位同学的成绩: "))
# 根据成绩范围更新计数器
if score >= 90:
优秀_count += 1
elif 60 <= score < 90:
良好_count += 1
elif score >= 60:
及格_count += 1
else:
不及格_count += 1
# 输出统计结果
print("成绩统计:")
print(f"优秀学生人数:{优秀_count}")
print(f"良好学生人数:{良好_count}")
print(f"及格学生人数:{及格_count}")
print(f"不及格学生人数:{不及格_count}")
相关问题
python输入学生姓名与成绩,并取成绩最大值的姓名
在Python中,你可以通过字典数据结构来存储学生的姓名和成绩,然后遍历这个字典找出最高分的学生姓名。下面是一个简单的示例:
```python
students = {} # 创建一个空字典来存储学生信息
while True:
name = input("请输入学生的姓名(输入'q'退出):")
if name.lower() == 'q':
break
score = float(input("请输入该生的成绩:"))
students[name] = score # 添加学生姓名和成绩到字典中
if not students: # 检查是否添加了任何学生
print("没有输入任何学生的信息.")
else:
max_score = max(students.values()) # 获取最高分
winner_name = [name for name, score in students.items() if score == max_score][0] # 找出最高分的学生
print(f"成绩最高的学生是:{winner_name},他的成绩是:{max_score}")
```
这个程序会持续循环获取学生姓名和成绩,直到用户输入'q'为止。然后它会找到最高分并返回对应的姓名。
编写Python程序输入n位同学的成绩,统计并输出不及格的人数
在Python中,你可以通过定义一个函数来实现这个功能。首先,你需要从用户那里获取每位同学的成绩作为输入,然后检查每个成绩是否达到及格线(通常假设为60分)。如果某个成绩低于及格线,则计数器加一。下面是一个简单的示例:
```python
def count_ungraded_students():
n = int(input("请输入学生人数:"))
grades = []
for _ in range(n):
grade = float(input(f"请输入第{i+1}位同学的成绩:")) # 使用i+1是因为循环变量i从0开始
if grade < 60:
grades.append(grade)
ungraded_count = len(grades)
print(f"不及格的同学有{ungraded_count}人,他们的成绩分别是:")
print(grades) # 如果你想显示所有不及格的成绩
count_ungraded_students()
```
在这个脚本中,我们先让用户输入学生人数,然后在一个for循环中依次询问每一位同学的成绩,并将不及格的成绩添加到列表中。最后,计算并输出不及格的学生人数。