• 习题练习:输入考试分数,自动得出考试等级


    题目要求

    这段代码运行后具备交互能力:从使用者的输入中获得分数,代码自动运算并打印该分数对应的等级。

    分数为整数,最低为 0,最高为 100。分数对应的等级为:

    60 分及以下为 E 60 到 70 分(包含 70 分)为 D 70 到 80(包含 80 分)为 C 80 到 90(包含 90 分)为 B 90 分以上为 A

    解法1:使用if语句

    利用if语句根据分数的不同的取值范围,给定一个成绩等级,用一个元组存储成绩等级。

    score = int(input('请输入分数(0-100):'))
    grade = ('A', 'B', 'C', 'D', 'E')
    
    # 判断分数对应的等级
    if score <= 60:
        my_grade = grade[4]
    elif score <= 70:
        my_grade = grade[3]
    elif score <= 80:
        my_grade = grade[2]
    elif score <= 90:
        my_grade = grade[1]
    else:
        my_grade = grade[0]
    
    print('你的成绩等级是:', my_grade)
    

    解法2:使用字典

    一开始也想过使用字典来做,因为分数和等级正好是对应的,但是分数对应的是一个范围,想到这就卡住了,参考其他人写的程序,有一个比较巧妙的方法:

    • 使用判断的边界作为字典的key,成绩等级作为value,
    • 当从小到大排列时,判断的条件是<=key,并且条件成立时,跳出循环
    • 当从大到小排列时,判断的条件是>=key,并且条件成立时,跳出循环
    score = int(input('请输入你的分数(0-100):'))
    grades = {60:'E', 70:'D', 80:'C', 90:'B', 100:'A'}
    
    for key in grades:
        if score <= key:
           grade = grades.get(key)
           break
    
    print('你的成绩等级是:',grade)
    
  • 相关阅读:
    设计模式之策略模式
    整理Java面向对象
    springboot+easyui+jpa实现动态权限角色的后台管理系统(二)
    随笔9
    随笔8
    随笔7
    PHP curl方法集合
    curl json方式提交
    富文本图片和视频标签增加域名前缀
    fastadmin原生编辑按钮点击默认100%显示
  • 原文地址:https://www.cnblogs.com/augustine0654/p/14707007.html
Copyright © 2020-2023  润新知