题目
有3个学生,每个学生有3门课的成绩,从键盘输入数据,包括学号、姓名、三门课成绩,学号整型,姓名字符型,成绩实型,计算3门课程总平均成绩,以及平均分最高的学生信息。不考虑非法成绩等特殊情况。
格式
输入格式
每行输入一个学生的数据,空格分隔。
输出格式
输出平均分最高的学生信息。注意:每个成绩有可能是整数、有可能是浮点数,所以需要3各分数各自单独格式输出!!!
样例1
输入:
101 mike 45 66 88
102 miya 65 16 18
103 tony 65 66 48
输出:
101 mike 45 66 88
程序
class student:
def __init__(self,id,name,s1,s2,s3):
self.id = id
self.name = name
self.s1=s1
self.s2=s2
self.s3=s3
def info(self):
# print(self.s2)
res = self.id+" "+self.name+" "
if int(self.s1)==self.s1:
res = res+str(int(self.s1))+" "
else:
res =res+str(self.s1)+" "
if int(self.s2)==self.s2:
res = res+str(int(self.s2))+" "
else:
res =res+str(self.s2)+" "
if int(self.s3)==self.s3:
res = res+str(int(self.s3))+" "
else:
res =res+str(self.s3)+" "
print(res)
def main():
#code here
n = 3
arr = []
while(n):
row =list(map(str,input().split()))
tmp = student(row[0],row[1],float(row[2]),float(row[3]),float(row[4]))
arr.append(tmp)
n-=1
sorted(arr,key =lambda x: (x.s1+x.s2+x.s3))[len(arr)-1].info()
pass
if __name__ == '__main__':
main();
3786

被折叠的 条评论
为什么被折叠?



