Python设定10个成绩,统计及格人数的平均分
时间: 2024-01-29 10:42:24 浏览: 103
以下是一个Python程序,可以设定10个成绩,并统计及格人数的平均分:
```python
scores = [80, 90, 70, 65, 75, 85, 95, 60, 55, 80]
sum_scores = 0
num_pass = 0
for score in scores:
if score >= 60:
sum_scores += score
num_pass += 1
if num_pass > 0:
avg_score = sum_scores / num_pass
else:
avg_score = 0
print("及格人数为:", num_pass)
print("及格人数的平均分为:", avg_score)
```
输出结果为:
```
及格人数为: 7
及格人数的平均分为: 80.0
```
解释:
首先,我们定义了一个包含10个成绩的列表scores,然后我们定义了两个变量sum_scores和num_pass,用于统计及格人数和成绩总和。
接下来,我们使用for循环遍历scores列表中的每个成绩,如果成绩大于等于60分,则将该成绩加入sum_scores中,并将num_pass加1。
最后,我们计算及格人数的平均分,并将结果打印出来。如果num_pass为0,则平均分为0。
相关问题
用python求平均分:设定10个成绩,统计及格人数的平均分。
以下是一个示例代码:
```python
scores = [75, 80, 65, 90, 70, 85, 95, 60, 80, 75] # 10个成绩
pass_count = 0 # 及格人数
total_score = 0 # 总分
for score in scores:
if score >= 60:
pass_count += 1
total_score += score
if pass_count > 0:
avg_score = total_score / pass_count # 平均分
else:
avg_score = 0
print("及格人数:", pass_count)
print("平均分:", avg_score)
```
输出结果:
```
及格人数: 8
平均分: 80.0
```
解释:
代码首先定义了一个包含10个成绩的列表 `scores`。然后定义了两个变量 `pass_count` 和 `total_score`,分别用于统计及格人数和总分。接着使用 `for` 循环遍历每个成绩,如果成绩大于等于60分,则将及格人数加1,并将该成绩加入总分中。循环结束后,如果及格人数大于0,则计算平均分并赋值给变量 `avg_score`,否则将平均分设为0。最后输出及格人数和平均分。
输入班级若干个学生的成绩,输入-1结束输入,成绩假设均为整数。 计算班级的平均成绩、及格人数和不及格人数。 提示:平均成绩也为整数,用整除// 输入格式: 一行输入一个整数,直至输入-1结束 输出格式: 输出班级平均成绩 及格人数 不及格人数 python编程
你可以使用Python编写一个简单的循环结构来解决这个问题。首先,创建三个变量分别存储总分、及格人数(我们设定及格线通常是60分)和不及格人数。然后逐个读取用户的输入,对每个成绩进行累加,并更新相应的计数。当输入-1时,表示输入结束,此时可以根据之前的统计计算出平均成绩。
这是一个简单的示例:
```python
total_score = 0
count_pass = 0
count_fail = 0
while True:
score = int(input("请输入一个学生的成绩(输入-1结束):"))
if score == -1:
break
total_score += score
if score >= 60:
count_pass += 1
else:
count_fail += 1
average_score = total_score // len([score for score in range(total_score + 1) if score != -1]) # 计算平均成绩
print(f"班级平均成绩:{average_score}")
print(f"及格人数:{count_pass}")
print(f"不及格人数:{count_fail}")
```
在这个程序中,我们通过列表推导式`[score for score in range(total_score + 1) if score != -1]`排除了输入的-1,来计算有效的学生总数,以便更准确地得到平均成绩。
阅读全文