测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A26469. 某次考试成绩数据如表所示,这些数据被储存在字典变量score中。score中的键为学生姓名,对应值是一个列表,列表中的项目为该学生的各科成绩。编写程序,处理score中的成绩数据,对每位学生的成绩评定等级,并在接收到用户输入的学生姓名时输出等级。要求:(1)等级评定标准为:当各科目平均成绩不低于90分,且各科成绩均不低于80分,等级为A+;当各科目平均成绩不低于90分,但存在低于80分的科目时,…

填空题 中等

题目描述

某次考试成绩数据如表所示,这些数据被储存在字典变量score中。score中的键为学生姓名,对应值是一个列表,列表中的项目为该学生的各科成绩。编写程序,处理score中的成绩数据,对每位学生的成绩评定等级,并在接收到用户输入的学生姓名时输出等级。

要求:

(1)等级评定标准为:当各科目平均成绩不低于90分,且各科成绩均不低于80分,等级为A+;当各科目平均成绩不低于90分,但存在低于80分的科目时,等级为A;当各科目平均成绩低于90分且不低于80分,等级为B;当各科目平均成绩低于80分且不低于70分,等级为C;当各科目平均成绩低于70分且不低于60分,等级为D;当各科目平均成绩低于60分,等级为E;

(2)接收用户输入的姓名字符串,若姓名出现在成绩单中,则输出该同学此次考试成绩对应的等级,否则输出no。

提示:

(1)利用适当方法对变量score中的数据进行处理,完成成绩等级评定;

(2)将学生姓名与等级对应,保存在新的字典中。

注:input()函数中不要增加任何参数等提示信息。

预设代码:

score = {'Alen': [88, 94, 86, 91], 'Bob': [91, 94, 88, 92], 'Cathy': [78, 94, 93, 99], 'Duke': [65, 78, 79, 69], 'Ella': [81, 91, 76, 75], 'Frank': [80, 83, 87, 70], 'George': [71, 76, 68, 80], 'Haven': [71, 63, 58, 80], 'Iva': [71, 55, 56, 54]}

例:

输入: Alen         输出: B

输入: Molly        输出: no

参考答案

score={'Alen':[88,9486,911,'Bob':[91,94,88,92],'cathy': [78,94,93,99], 'Duke':[65,78,79,69],'Ella':[81,91,76,75],'Frank':[80,83,87,70], 'George':[71,76,68,80],'Haven':[71,63,58,80],'Iva':[71,55,56,54]} def rank(list): avg=sum(list)/4 if avg>=90: for i in list: if i<80: return 'A' return 'A+' elif avg>=80: return 'B' elif avg>=70: return 'C' elif avg>=60: return 'D' else: return 'E' result={} for i in score: result[i]=rank(score[i]) name=input() if name in result: print(result[name]) else: print('no') 测试样例: 输入:Alen 输出:B 输入:Bob 输出:A+ 输入:Cathy 输出:A 输入:Duke 输出:C 输入:Ella 输出:B 输入:Frank 输出:B 输入:George 输出:C 输入:Haven 输出:D 输入:Iva 输出:E 输入:Keen 输出:no
上一题 下一题