输入10名学生语文、数学、英语课成绩,计算每名学生的平均分并输出,分析3门课程的优秀率
时间: 2023-06-20 11:03:25 浏览: 128
好的,我可以帮你编写一个 Python 代码来解决这个问题。你可以按照以下步骤进行操作:
1. 首先定义一个包含10个学生的列表,每个学生的成绩用一个包含3个元素的列表表示,分别表示语文、数学、英语的成绩。
2. 然后定义一个函数,用于计算每个学生的平均分。函数接收学生的成绩列表作为参数,计算平均分并返回。
3. 接下来,遍历所有学生的成绩列表,调用计算平均分的函数,并将结果保存到一个新的列表中。
4. 最后,分别统计语文、数学、英语三门课程的优秀率,即成绩高于80分的学生占总人数的比例,并输出结果。
下面是完整的 Python 代码实现:
```python
scores = [[85, 76, 92], [90, 80, 84], [70, 90, 78], [88, 82, 85], [76, 84, 88],
[92, 90, 91], [85, 78, 80], [80, 82, 85], [78, 86, 88], [88, 92, 90]]
def calc_average(scores):
return sum(scores) / len(scores)
averages = []
for student_scores in scores:
average = calc_average(student_scores)
averages.append(average)
print("该学生的平均分为:", average)
chinese_count = math_count = english_count = 0
for student_scores in scores:
if student_scores[0] >= 80:
chinese_count += 1
if student_scores[1] >= 80:
math_count += 1
if student_scores[2] >= 80:
english_count += 1
print("语文课程优秀率为:", chinese_count / len(scores))
print("数学课程优秀率为:", math_count / len(scores))
print("英语课程优秀率为:", english_count / len(scores))
```
注意,上述代码中的成绩列表 `scores` 是一个示例,你需要根据实际情况修改成绩数据。同时,上述代码只是一个简单的示例,有些细节问题可能需要你自己进行调整。
阅读全文