输入学生的学号、姓名以及语文、数学、外语成绩,统计每个学生的总分,并按总分升序输出所有学生的学号、姓名和总分。
输入格式:
输入若干行数据,每一行数据分别为学号、姓名以及语文、数学、外语成绩,每项数据间用空格隔开
最后一行输入"#”结束
输出格式:
按总分升序输出学生的学号、姓名和总分,每一个学生占一行,每项之间用", "隔开
输入样例:
1001 Alice 80 90 80
1002 Mark 84 89 70
1003 David 80 70 60
#
输出样例::
1003, David, 210
1002, Mark, 243
1001, Alice, 250
答案:
# 定义一个空列表用于存储学生信息
students = []
# 输入学生信息
while True:
input_data = input().strip()
if input_data == "#":
break
# 将输入的数据分割成学号、姓名、语文、数学、外语成绩
student_info = input_data.split()
student_id, name, chinese, math, english = student_info
# 将成绩转换为整数
chinese = int(chinese)
math = int(math)
english = int(english)
# 计算总分
total_score = chinese + math + english
# 将学生信息添加到列表中
students.append((student_id, name, total_score))
# 按总分升序排序学生信息
students.sort(key=lambda x: x[2])
# 输出排序后的学生信息
for student in students:
print(", ".join(map(str, student)))