输入10个学生5门课的成绩,分别用函数实现下列功能。计算每个学生的平均分计算每门课的平均分找出所有50个分数中最高的分数所对应的学生和课程。用程序表示
时间: 2024-01-01 17:04:42 浏览: 61
以下是代码实现:
```python
# 定义计算每个学生平均分的函数
def avg_score_student(scores):
avg_scores = []
for i in range(len(scores)):
avg_scores.append(sum(scores[i])/len(scores[i]))
return avg_scores
# 定义计算每门课平均分的函数
def avg_score_course(scores):
avg_scores = []
for i in range(len(scores[0])):
total = 0
for j in range(len(scores)):
total += scores[j][i]
avg_scores.append(total/len(scores))
return avg_scores
# 定义找出最高分数所对应的学生和课程的函数
def find_highest_score(scores):
max_score = max([max(x) for x in scores])
for i in range(len(scores)):
for j in range(len(scores[0])):
if scores[i][j] == max_score:
return (i+1, j+1)
# 主程序
scores = []
for i in range(10):
score = []
for j in range(5):
score.append(int(input("请输入第{}个学生第{}门课的成绩:".format(i+1, j+1))))
scores.append(score)
avg_scores_student = avg_score_student(scores)
print("每个学生的平均分为:", avg_scores_student)
avg_scores_course = avg_score_course(scores)
print("每门课的平均分为:", avg_scores_course)
highest_score_student, highest_score_course = find_highest_score(scores)
print("最高分数{}所对应的学生为{},课程为{}".format(max([max(x) for x in scores]), highest_score_student, highest_score_course))
```
运行程序,输入10个学生5门课的成绩,即可得出每个学生的平均分、每门课的平均分和最高分数所对应的学生和课程。
阅读全文