00:00
好,那我们看一下这个条件选择语句第几种啊,第三种叫Switch语句,Switch语句那我们看一下,首先是它的这个格式什么样的,它也是一个做条件判断的。好,这是我们第二种三分符。这是第三种是什么是这个。Switch Switch啊。所以是中文叫什么名啊?选择或开意思吧啊语句,然后看的格式什么格式。啊,这里面写一下格式啊格式。嗯,格式。它的格式是SWCH,然后是括号括起来,这里面注意一下啊。Switch这里面也是一个什么,也是一个表达式或者是一个变量,是不是也可以啊,啊表达式或变量啊,直接写表达式了,你就可以理解为变量,这里面计算完一个什么一个。结果之后,它可以和它下面对应的有多个分支去怎么着去选择啊,看一下这里面如果说没有一个分支情况应该怎么写,应该是括号括起来,然后是。
01:07
写一个CA,然后是值一,然后是冒号,看到了吗?这的格式,然后在执行完成之后需要怎么需要这个这里面是什么?这里面是语句或代码啊,语句写代码啊,代码一行可以写多行,然后是break break用来什么用来这个是跳出啊,这个是咱们后面讲的一个跳出啊,就是Switch里面你既然把这个值一找到了,那我执行对应的代码,后面情况下还有值二,值三或者值五,是不是我都怎么着都不需要了,然后这里面需要怎么需要一个break来退出,退出哪个退出Switch的一个操作是不是这里面之一,然后怎么着还有一个是。然后是。值二,然后这里面注意一下,这是冒号啊,先有值,再有冒号和K怎么区分下来,然后同样是什么,同样是这个是。代码,然后是。
02:01
Break break。啊,同样它这里面在执行完成之后,它还有什么default是不是,那我看是哪哪个等一下这没写吗?这有吧,AULT是吧,Def a,诶def FA。AUT这里面什么,这里面就相当于我们写那个L一样,是不是我的所有值都没满足,它会走到哪啊,它会走到这个是default里面来,Default里面之后,一般情况下我们把default放在最后一行的情况下,就不用加break了啊,你当然也可以加break,这里面也可以什么也可以是这个代码。再跟大家说一下这个执行过程,这里面是值一值二,比如说我有一个值,就是值值一相对应的这个值,那它会执行完这里面代码break后面的所有内容都怎么着都不会去执行,知道吧?然后这里面如果是跟值R相关的,那就走哪个走这块,那代码是不是后面不会执行,那如果是什么,如果是表达式里面没有找到对应的值,就走哪的。
03:05
Before,然后怎么的,然后再去退出执行,这是它的一个执行过程,那这里面可以给大家举个例子啊。比如说我们如果输入什么,如果输入这个成绩啊,咱们成绩比如说通过键盘录入成绩,输入一名学生成绩,如果是100分是什么是优秀啊是不是,80分是什的人好是不是,然后这个是。70分算什么及格,呃,60分算及格是不是咱就写成三个档,然后还有一个什么不及格,是不是低于60分不及格,是不是我们可以通过Switch来把这个怎么的去演示一下,那我先把这个呃练习说一下啊,什么练习呢是。练习。那说一下是通过键盘通过。键盘输入名。学员成绩。根据成绩。算出。
04:01
啊,优秀。你要是良好及格和。及。及格。还有。不及格这几个选项现在是。四个选项是吧,那我们可以算一下啊,比如说输入这个分数应该那个成绩,那我给成绩加一个什么,加一个限定是零分到100分之内的一个数是不是可以啊啊,做一个限定啊,然后去输入这个数,那我们先演示一下什么,先演示一下这个Switch的一个工作原理是不是,然后再自己把这个实现一下啊,这是。06SWI ch。啊,语句啊,写成语句小C。好,那这里面比如说我给写个值int类型A等于十,然后这里面怎么写,这里面是SI ch,你看我这里面会自动建立起来啊,如果你没建立起来的话,你手写啊,那咱们手写一遍啊,Switch,然后括号这里面加什么表达式,是不是表达式,那比如说这里面什么,这里面写一个是。
05:03
A大于零。啊是,这也是个表达式,是不是,这反过来值是几啊?一是不是啊,那咱们先不写啊,比如说我这里面直接写个A,直接写A,那A对应的这个值应该是几啊。十是不是我们写C冒号一呃一,然后是什么?是这个冒号看到了吧,然后这里面写一下,写一下就是PPF。是A的。A的值为冒号百分号D,然后是。逗号一个A,然后是break break。然后再写啊是C,然后是。十冒号。啊,然后是。PRINTF。A的A的值为冒号百分号D,然后是斜杠N,为了区分加斜杠N啊,然后逗号一个A,然后是。
06:03
B瑞。然后是。U alt,然后是。PPF。A是啥?斜杠N。逗号,呃,没没有没有了,这就是直接打印一个语句啊,是black。啊,是可以不写啊,咱们先把程序这个这是一个什么,这是一个简单的Switch一个样例是不是,那我们看一下这个它的结构是什么样的,首先。这是一个变量,我们先不管啊,然后是一个Switch,这是一个什么,这是一个。啊,就是条件判断语句是不是它这里面这个A可以当做什么,当做一个变量,可以当做个表达式是不是,那这里面我需要根据这个A对应的什么这个值来找到什么case里面对应的这个数据是不是啊,那如果说什么,如果说这个K这个什么A等于一的情况下,会执行哪句话,第一句执行完之后,因为有break这个跳出什么,跳出这个Switch这个开关,呃,这个这个什么呀,这个语句了,就是怎么就是执行到这儿,如果遇见就怎么就算停止了,这个语句后面有所有的语卷就不执行了,但是如果这个值为什么值为十,那么这个就怎么没进来,后面这个break它怎么的也执行不到,知道吧,啊执行不到,那所以说它怎么样,它就怎么样往下走走找到十会把这个什么样内容打印出来,是不是,如果找不到十,就这个,这里面A等于100,找不到十的情况下,它会怎么着,它会打印出这个是depot下面对应的什么,A是啥是不是,那我们看结果现在显示出来应该是什么是。
07:46
检查结果是什么是?A的结果为十,是不是因为对应的找到这个值了是不是,这是什么?这是我们这个是。嗯。做的一个简单的Switch语句的一个介绍,啊,那好,那我们可以怎么的把咱们这个改成什么,改成案例了,是不是改成案例,通过键盘输入一个什么,输入一个数据放到什么里面,放到这个A里面去,是不是这个A作为什么成绩是不是写一下是。
08:17
百分号D注意一下,这里面是接收数据用的,你别给我弄个斜杠,弄个逗号啥的,是不是不用你分割啊,这里面写个and a啊,这里面接收什么,接收这个值放到A里面去是不是啊,然后根据可以根据这个什么,可以根据这个A进行操作,是不是A的分数为多少啊。啊,这里面优秀需要怎么呢?需要是90到100嘛,是不是做个区间好不好啊,比如说是90到100是。优秀是不是啊,大于90分就是优秀了,还有什么,还有就是良好是什么呢?是这个是。那。80到90啊好,80到90这个区间就是良好是不是那及格呢?及格就是60到80是不是都区间呢?啊然后这个呃,不及格应该怎么表示啊啊是不是呃零到60分不等啊,那我们看出来这个这个什么,我把这个放大一点啊,可能同学看不清。
09:18
啊,这是我们这个录入这个什么这个值,但是我们Switch这里面看一下它的结构应该是是一个什么样结构,就应该是一个具体的值是不是,而不能是一个其他的东西,所以说这里面我们需要对什么,对这个我们输入这个分数,干这个分数做一个操作,怎么操作啊。判判断判断是不是判断这个分数到底是多少多少是不是啊,还有一种方式怎么看一下,你看条件判呃是怎么是,这个是可以把分数除以一个值,除以多少啊。对这同学说了是不是,比如说我这里面是分数为AA除以十,得到结果为多少啊。一。嗯,是零到十吧,零到十之间的一个区间是不是,那这里面我是不是可以这个是一个具体的值了吧,是不是,那我写一下,比如说CE,然后是十分,那是一个什么呀?那是答应什么。
10:09
打印是。呃,是。优秀吧,应该是呃优秀先是优秀啊,优秀斜杠N,然后是分号,那我比如说我这个这个博瑞加个贝博瑞卡啊,你先写完啊,有的同学说能优能优化是能优化还没写完的啊配,然后这里面写个什么九九是不是同样对应的也是什么,也是优秀,是不是程序执行完成之后也得怎么样。也得加个这个break吧,是不是,然后怎么的,但是。八和呃是六七,呃是有呃是8万就是八是不是啊啊应该这个分数应该是这样算的,是这个80到89是不是,呃这这样情况是不是都有了90到100,然后这是。到79是不是啊,79这里面应该是从59吧,是不是这样算的,那我们这里面比如说你输入一个分数,比如说输入一个59分,再除以个十等于几啊,59除以十印证类型等于几啊五是不是啊,就是五的情况下,就是怎么就是不及格了吧,是不是,比如输入一个79,那这里面打印的是几啊,七是不是在哪个段位上,是不是在这个段位上,这是白银呢?这是黄金,这是什么?最强王者是不是好那咱们这里面写一下,这是,呃,这是哪呢?是。
11:27
啊,商量就是。对的值,然后这里再写个C是八啊,然后是C。啊,就是八就可以了吧,是不是七就是另外一种是不是。发的情况下,我把这个拿过来,这两句话给他复制一下,粘贴到这这样。良好,我先写完这句话,你别这句话很多同学就不懂了,别着急啊,然后是七应该是什么是。及及格吧,及格。
12:02
七。七是及格吧,按照咱们这个里面来啊,七是及格啊啊,然后是六个是不是也及格啊啊复制一下,把这个粘贴一下,这应该是六算是及格,然后54321的情况,543210的话,就是什么就是这个。呃,不及格是不是?第二句话是?不及格,那这样情况下我们就完善那个什么,完善那一个Switch是不是看一下,那对应的这个是它的内容,你能看懂吗?我在重播让大家给大家分析一下这个代码啊,首先我先做什么操作,是定义一个变量,然后获取一下变量这个值,通过Switch这里面做一个操作是除以十,除以十,因为是整形的情况下,会得到零到十之内所有的值是不是,那根据这个里面值进行一个排列是不是?呃,这里面是十和九是。优秀啊,八是良好,七是及七和六是及格,然后是以后的下面不及格是不是,那我们看一下执行是效果是什么样的,这加呃,这有水分嘛,是不是调是。
13:01
开始执行。这里面界面停止了,说让你怎么让你去输入一个分数,那我输入一个100分,输入个十分就怎么就是不及格吧,100分是个什么,是个优秀是不是,然后那就这下调试开始执行是90分是不是也优秀啊啊。调试开始执行89分呢。良好是不是,那这里面80分到89分都是良好的,还是行,这里面写个是。20分不及格是不是?嗯,再来一个是60分。60分及格是不是啊,那是59分有罪,60分万岁是不是啊,这是咱们大学的时候吧,是不是这样的话就怎么就已经写完了我们这个代码是不是,那我这个代码是可以优化一些的,比如说什么,比如说我这个十和九,他俩共同的都是怎么这幅代码是不是相同的,我可以这样写,把这两句话给它注销掉。注销掉什么意思?比如说我输入100分的情况下,它会从上到下找,找到这个十的值是不是这是,然后执行十下面一个代码是不是啊,执行到哪退出啊,执行到break退出,他会把这句话当做十上面的代码,知道吧啊,然后去执行这句话,当然如果是这个怎么的,如果是你要输入个九,它也能找到哪哪个入口,是不是这个入口啊。
14:17
所以说可以把这个代码优化一下,怎么优化呢?是不是这块可以优化掉啊,这块也可以优化掉啊。啊就给他注销掉就可以,那这样情况下是不是优秀良好及格不及格是不是四个选项就可以了吧,不用写那些过多了,那我们看一下对命题啊,看这个结果能否执行啊,能看明白,现在这个代码开始执行。然后是比如说60及格,然后是输入个70的值啊,调试开始执行,70也是及格的啊,然后再输一个79是小样表。及格是不是,那输入个80分吧,是不是这个良好,再输入个100分儿,开始执行100,你是不是优秀啊,也能去执行这个代码啊好,那再来看一下调试,开始执行就个1万。是不,诶为啥是除个1万不及格了呢?我们这里面取的是什么啊,这里面取的值是,呃呃,这个一千一万除以个十是什么1000是不是,我有这个1000这个值吗?没有没有找到哪了,你报里面这个东西了是不是,那这里面显示什么不及格是不是,那你说是打一万分只能不及格是不是,你跟你妈说我打一万分你妈当一脚啊,就是你不及格啊,就这意思啊,就是我们什么这个是程序的运营过程啊是。
15:28
Switch的能把这代码发给大家,这个让大家怎么样课间时间把这个这个叫什么,这个Switch加上一个案例,这个案例叫什么?原案例叫注入一的成绩,根据成绩怎么样计算优秀良好啊,当然你可以用什么用这个if条件语句也可以做这个操作,知道吧,你如果说这个呃,Space练习会了之后,你怎么样就可以去做这个操作,这里面呃录在一起了,还有一个就是这个。If条件语句和这个Switch语句的一个区别在于什么,这里面跟大家说一下啊啊。写个注意吧,注意啊,就不录在一起了,我们不给你分内路了,If条件一件。
16:07
那我们再回过回头来看一下这个讲,呃,这个讲义啊,我们还有个条件,就是如果说这里面比较多的情况下,是不是我得一个条件,一个条件从上到下顺序往下判断的,这样情况下,比如说我答案在最后一个,他能满足,比如说前面有10万个,那是怎么着,就先把前面10万个代码全部执行完成之后,才会执行哪个我最后一个,咱们找到我这个答案是不是,这样的情况下,如果你判断条件比较多的情况是效率是不是很慢呢?比如说你要这个1万只小猪就比其重是不是,这是不是比较慢呢?是不是你得签到1万次,然后在里面去找这个内容啊,找到那小猪是不是特别麻烦呢?这是if条件判断。怎么的,就是这个。他这个就是执行效率可能更差一点是吧,咱们先这么说啊,执行效率差啊,呃,执行。效率差,这个差不一定是个绝对的,比如说你第一个就怎么就满足条件,他学习效率是不是也很快呀,是不是后面后面不用判断了,学习效率差啊,这只是一个相对的差啊,啊swi ch Switch啊,也叫条件一啊。
17:11
条件语卷他怎么他的学行效率是不是可能快啊,因为他很很能直接就确定这个值到底是不是对的,是不是啊,他找到这个值啊,条件语卷是执行效率可能更高一点,执行效率高是吧,这也是他的一个优点。但是还有他也有缺点,有优点当然有缺点,要不然直接用Switch得了,不用if条件放在里边了是不是?If条件判断软件还有个优点就是什么?就是它可以if,可以。判断一个区间。啊,比如说我想大于1万的,我判断在一个区间之内,小于1万的判定区间之内是不是,但是这个所以是怎么的,我判断大于1万情况下,怎么就比较麻烦一点了,是不是啊。那比如说这里面并不应该是这这样这样说就对了啊,是判断1万是个档,判断那个5000到1万是个档,3000到这到这到什么到这个5000是个档,是不是很多档的情况下,它就没办法判了,还是if怎么着,能判断一个区间,这样其是该怎么着,就是这个区间情况下,这个Switch就有优势,是不是if会有优势是不是,但是这个Switch是怎么的,是只能判断具体的一个值啊,你要写的情况,你比如说这个什么,这个是1万是不是再写个什么CASE9999。
18:26
啊就呃,9999,再写个什么,9998,你一直写到5000得多长个代码是不是,那这个一般情况下用来怎么样区间某一个值的是不是,那这个就相当于咱们之前讲的一个叫区间,区间法和停止法,这两个是不是就明白了吧?啊明白了可以判断一个区间Switch啊用来判断一个值。值,这就是他俩的这个区别,那这个什么呀,这个当然这个如果说你能用什么,能用三分之段符,尽量用三分之段福是不是,但是除了这个让人读不懂之外,剩下压的优点都挺好的,是不是你也不用写这标代码是不是一眼就能看得明白,是不是看得清楚,是是三篇老师会比他俩更有点优势,就是什么代码书写简单是不是啊,这个是。
19:11
三目运算符。嗯。三分线符结构简单,结构简单明了。明秒,但其实这个三分段幅是介于什么,介于这个A条件一位出来的,知道吧,其实它内部条件判断还是跟那什么还跟A是一模一样的,知道吧,它执行过程,那这是他们这个三点区别,咱们上午讲了两大块,第一大块是这个运算符表达式这块,第二件,第二大块是讲的一个什么,讲的是呃条件语句这块,那咱们下午会用于下午时间讲这个循环语句,以及这个线上循环这块啊,咱们可以放学了。
我来说两句