课程首页 › 第2部分 › 第28课

第28课 从青铜到王者

第2部分 智能的开始 · 选择结构· 知识点:switch深入、对比

从青铜到王者(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语句的执行逻辑,可以查阅资料探寻这是为什么。