题解 | #牛牛的绩点#

牛牛的绩点

http://www.nowcoder.com/practice/de8bc3e736164786b07a4dd64ed172f7

# 创建 grade 和 score 列表,存储每次输入的课程等级和学分
grade = []
score = []

# 创建 total_score变量,记录所有的课程的学分
total_score = 0

# 创建 result,记录每门课学分乘上单门课绩点的结果
result = 0

# 连续输入一行等级一行学分,遇到等级为False则结束输入
while 1:
    # 创建 tmp_grade 和 tmp_score 临时变量,存储单次输入的课程等级和对应的学分
    tmp_grade = str(input())
    if tmp_grade == 'False':
        break
    tmp_score = float(input())
    grade.append(tmp_grade)
    score.append(tmp_score)
    total_score += tmp_score

# 将每门课学分乘上单门课绩点,计算出相应的结果
for i in range(len(grade)):
    if grade[i] == 'A':
        result += 4.0*score[i]
    elif grade[i] == 'B':
        result += 3.0*score[i]
    elif grade[i] == 'C':
        result += 2.0*score[i]
    elif grade[i] == 'D':
        result += 1.0*score[i]
    else:
        result += 0
        
# 打印出牛牛的均绩(每门课学分乘上单门课绩点,求和后对学分求均值),保留2位小数
# print(round(result/total_score,2)) # 这种方式如果是2.0,结果只会是2.0,不会保留2位小数
print('%.2f'%(result/total_score))
        
全部评论
运行结果有问题呜呜
点赞 回复 分享
发布于 2023-07-23 18:07 山西
大神,我想请教下,input()这个环节,是如何做到将输入的等级进入tmp_grade,输入的学分进入tmp_score的呢?我看代码是没有做任何处理的,为啥不是‘A’进入学分那张表呢,不理解,求指导
点赞 回复 分享
发布于 2022-09-03 16:28 江苏
看着没问题,运行报错,为啥
点赞 回复 分享
发布于 2022-08-01 23:34

相关推荐

点赞 评论 收藏
分享
评论
19
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务