假设有一个班级,有若干名学生,学生的成绩分为及格(60 分及以上)和不及格(60 分以下)两个等级。给定一个成绩列表grades = [75, 55, 80, 45, 65, 90, 35,89,66,87,45],使用循环和选择结构统计及格人数和不及格人数,并计算出平均成绩。
时间: 2024-10-23 12:02:57 浏览: 88
首先,我们可以创建两个变量,一个用于记录及格的人数(pass_count),另一个用于存储所有学生的总分数(total_score)。接着,我们遍历成绩列表grades,对于每个成绩:
1. 如果成绩大于等于60分,说明该生及格,将pass_count加一;
2. 否则,即成绩低于60分,说明不及格。
最后,计算平均成绩需要除以学生总数,这包括及格和不及格的学生。下面是一个简单的Python代码示例来实现这个功能:
```python
grades = [75, 55, 80, 45, 65, 90, 35, 89, 66, 87, 45]
pass_count = 0
total_score = 0
student_count = len(grades)
for grade in grades:
if grade >= 60:
pass_count += 1
total_score += grade
average_grade = total_score / student_count
pass_percentage = (pass_count / student_count) * 100 if student_count > 0 else 0 # 防止除以零错误
# 输出结果
print(f"及格人数: {pass_count}")
print(f"不及格人数: {student_count - pass_count}")
print(f"平均成绩: {average_grade:.2f} 分")
print(f"及格率: {pass_percentage:.2f}%")
```
在这个代码中,我们先初始化计数器和总分数,然后使用for循环迭代grade列表。使用if-else结构判断是否及格,累加计数和分数。最后,计算并打印平均成绩以及及格率。
阅读全文