Python 编程实现学生成绩统计与排名功能
# 定义一个二维数组,通过初始化方式存储一个班级的学生成绩
scores = [
[80, 90, 85],
[70, 85, 90],
[75, 80, 70],
[60, 70, 80],
[90, 85, 95]
]
# 输出查看班级所有学生成绩
print('班级所有学生成绩:')
for i in range(len(scores)):
print('第{}个学生的成绩为:{}'.format(i+1, scores[i]))
# 计算每个同学的平均分,将其存在一维数组中并输出查看
averages = []
for i in range(len(scores)):
average = sum(scores[i]) / len(scores[i])
averages.append(average)
print('第{}个学生的平均分为:{:.2f}'.format(i+1, average))
# 找出平均分最高的同学,输出其是第几个学生、平均分和各门课成绩
max_average = max(averages)
max_index = averages.index(max_average)
print('平均分最高的学生为第{}个学生,平均分为{:.2f},各门课成绩为{}'.format(max_index+1, max_average, scores[max_index]))
# 输出平均分低于60分的同学各科成绩
print('平均分低于60分的学生各科成绩为:')
for i in range(len(scores)):
if averages[i] < 60:
print('第{}个学生的各科成绩为{}'.format(i+1, scores[i]))
# 给各个学生按照成绩进行排名,并将其排名存放在数组每一行的最后一列中
rankings = [0] * len(scores)
for i in range(len(scores)):
rank = 1
for j in range(len(scores)):
if sum(scores[j]) > sum(scores[i]):
rank += 1
rankings[i] = rank
scores[i].append(rank)
print('排名后的成绩表为:')
for i in range(len(scores)):
print('第{}个学生的成绩为:{}'.format(i+1, scores[i]))
原文地址: https://www.cveoy.top/t/topic/mzE8 著作权归作者所有。请勿转载和采集!