Python 统计学生总分

输入学生的学号、姓名以及语文、数学、外语成绩,统计每个学生的总分,并按总分升序输出所有学生的学号、姓名和总分。

输入格式:

输入若干行数据,每一行数据分别为学号、姓名以及语文、数学、外语成绩,每项数据间用空格隔开
最后一行输入"#”结束

输出格式:

按总分升序输出学生的学号、姓名和总分,每一个学生占一行,每项之间用", "隔开

输入样例:

1001 Alice 80 90 80
1002 Mark 84 89 70
1003 David 80 70 60
#

输出样例:

1003, David, 210
1002, Mark, 243
1001, Alice, 250

 

代码如下:

a = []
b = []
i = 0
flag = []
total = 0
while True:
    x = input()
    if x == '#':
        break
    flag.append(0)
    xx = x.split()
    total += int(xx[2]) + int(xx[3]) + int(xx[4])
    s = xx[0] + ', ' + xx[1]
    a.append(s)
    b.append(total)
    total = 0
small = float("inf")
ii = 0
fl = 0
for j in b:
    for i in b:
        if small > i and flag[ii] != 1:
            small = i
            fl = ii
        ii += 1
    print('{}, {}'.format(a[fl], b[fl]))
    flag[fl] = 1
    ii = 0
    small = float("inf")

请大佬指正

posted @ 2022-11-23 19:11  彔忈  阅读(2192)  评论(2)    收藏  举报