第28课 从青铜到王者
从青铜到王者(switch深入、对比)
满分100分的考试成绩出来了,现在需要对分数进行等级划分。分数100~90定为A,89~80为B,79~70为C,69~60为D,60分以下是E。
下面试着用switch完成程序,将输入的得分转换成等级。

温故知新

运行程序:
请输入考试得分:100
等级是:A请输入考试得分:68
等级是:D
请输入考试得分:
(1)score>=0 && score<=100:用于排除错误分数,满分是100分,那么得分最低是0分,最高是100分。
(2)score=score/10:用于获取得分的十位数,因为score是整数类型,所以98÷10会得到9。
(3)穷举出所有分数除以10可能得到的商的结果,并通过case来匹配。

提出思考
相同的代码可以优化吗?

试试将执行相同指令的case进行合并。

将执行相同指令的case叠加在一起,可以增强代码的阅读性和编写的便捷性。
合并后的结构如下:

从青铜到王者
在一个赛季的比赛中,刚进入比赛的选手称为青铜,连胜10场的选手称为白银,连胜20场的选手称为黄金,连胜30场的选手称为钻石,连胜60场的选手称为王者,连胜满100场的选手将直接进入下一个赛季。
试着编写代码,看看哪些场次可以合并case。

运行程序:
请输入连胜场数:89
王者
巩固练习
(1)阅读以下程序代码,当输入数字1时,程序的输出结果是()。

A.
已完成第一步。
B.
已完成第一步。
已完成第二步。
备选方案已启动!
C.
已完成第二步。
D.
备选方案已启动!
(2)阅读以下程序代码,运行程序分别输入9、13、17,填写程序的输出结果。

9:_________________________________
13:_________________________________
17:__________________________________
(3)春节超市大促销,买得越多折扣越大。
①购物满1000元,打九五折。
②购物满2000元,打九折。
③购物满3000元,打八五折。
④购物满5000元,打八折。
运用switch语句编写程序,输入购物总金额就能计算出本次购物优惠了多少金额。(已知商品价格没有小数)


探索思考
针对巩固练习选择题1,分别输入1、2、3,可以总结出在执行case后没有break语句的执行逻辑,可以查阅资料探寻这是为什么。