题目
假设平均绩点计算方法如下:(课程学分1绩点+课程学分2绩点+课程学分n*绩点)/(课程学分1+课程学分2+课程学分n)。用户循环输入五分制成绩和课程学分,输入‘-1’时结束输入,计算学生平均绩点。等级与绩点对应关系如下表:
示例
参考代码
lst_grade = []lst_credit = []while True:str_grade = input("请输入课程成绩,-1结束!")if str_grade == '-1':breakelse:if str_grade == "A":lst_grade.append(4.0)elif str_grade == "A-":lst_grade.append(3.7)elif str_grade == "B+":lst_grade.append(3.3)elif str_grade == "B":lst_grade.append(3.0)elif str_grade == "B-":lst_grade.append(2.7)elif str_grade == "C+":lst_grade.append(2.3)elif str_grade == "C":lst_grade.append(2.0)elif str_grade == "C-":lst_grade.append(1.5)elif str_grade == "D":lst_grade.append(1.3)elif str_grade == "D-":lst_grade.append(1.0)elif str_grade == "F":lst_grade.append(0.0)else:print("输入不合法!")try:grade = eval(input("请输入课程学分,-1结束!"))except NameError:print("Error:NameError!")print("输入有误")else:lst_credit.append(grade)sum_grade = 0for i in range(len(lst_grade)):sum_grade += lst_grade[i] * lst_credit[i]av_grade = sum_grade / sum(lst_credit)print("你的平均绩点为:{:0.2f}".format(av_grade))
运行结果
说明
个人能力有限,仅供参考,共同学习!
假设平均绩点计算方法如下:(课程学分1*绩点+课程学分2*绩点+课程学分n*绩点)/(课程学分1+课程学分2+课程学分n)。用户循环输入五分制成绩和课程学分 输入‘-1’时结束输入 计算学生平均绩