zoukankan      html  css  js  c++  java
  • 习题练习:输入考试分数,自动得出考试等级

    题目要求

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

    分数为整数,最低为 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)
    
  • 相关阅读:
    base64和Blob的相互转换
    限制文件上传的大小和尺寸
    git将本地项目提交到github
    vue-cli3创建项目时报错
    运行项目是node-sass报错的解决方法
    classList的使用
    将数组扁平化并去除其中重复数据,最终得到一个升序且不重复的数组
    移动端的图片放大
    js获取url中的参数
    HTML5-canvas
  • 原文地址:https://www.cnblogs.com/augustine0654/p/14707007.html
Copyright © 2011-2022 走看看