00:00
我们继续来看一下嵌套分支。那前面我们讲了单分支,双分支,多分支,还有一种分支形式呢,也用的非常的多,叫嵌套分支,什么意思呢?来看一下。我们先看嵌套分支的基本介绍,在一个分支结构中又完整的嵌套了另外一个,在一个分支中又完整的嵌套了另外一个完整的分支结构。那么里面的分支结构称为内层分支,外面的分支结构称之为外层分支,这就是所谓的嵌套分支,那它的这个形式呢,是这样子的,If。OK if里面呢,又包了另外一个分支结构。当然这个分支结构里面可能还会这个是双分支,当然也可以是单分支,也可以是双分子啊呃,可以是多分支,就是说这个被包含的,写句被被包含的。包含的可以是单单分支,双双分支或者是多分支,甚至这里边说老师在这个衣服里面,我们能不能再继续套用呢。
01:14
就在这个if if里面或者S里面能不能再有其他的分,其他的这个分支结构也可以。但是呢,我们有一个前提都是说什么呢?就说一般情况下呢,我们这个分支结构不要太多,最多嵌套多少呢?最多嵌套三层,我来写一下啊嵌套分支。嵌套。嵌套分支不宜不死和过多。死核过多。最多。过多最多多少呢?最多不要超过,不要超过。三层,如果你这个地方超过三层会有什么问题呢?就是这个代码的可读性会非常的差,就衣服里面再来一个衣服再来一个if可以了,如果你if里面就是说这个if里这个,比如说这个S里面你来一个if。
02:09
对吧,来一个if好,这个if里面你又整一个if好,这个就很难阅读了,就它这个分支太多了呢,会造成什么呢?会造成我们这个程序的可读性降低就不好了。跑去时给他说的。基本语法,那下面呢,我们直接就算案例了,咱们就不说废话,直接上案例,我们来应用一下签到分支,看看在什么情况下可以用到。举个例子说,现在呢,有一个百米运动会,如果用时八秒以内就可以进入决赛,否则就被淘汰了。并且根据性别提示进入到男子组或者是女子组。那么输入成绩和性别进并进行判断这道题呢,本身先让同学们先做,这样子,我这个题我我带同学们做一下,下一个题呢,同学们自己做好吧,我们来一起完成一个这样的嵌套分支,来我们走一走。
03:09
还是老规矩,我们先把这个注销,然后呢,我们新建一个文件嵌套分支呢,可以这样取,叫lasted这个嵌套的意思,Lasted。好吧,我就取这样一个名字哦,这里面的原因是因为没有把后面这个删掉。好,同学们跟上我的思路,首先呢,我们仍然把这一个改一下哈,改成C。上面这两个也改成C吧。因为C和CC和CPP呢,它在很多情况下是可以通用的,所以你看到前面写的也没有错,Include ST dl。好,然后写一个。主函数,那写完一个主函数过后呢,同学们跟上我的思路,现在我们怎么写呢?先把需求拉过来。
04:02
对,先把需求拉过来。对吧,这是我们的一个具体的需求,那同样我们来做一个分析。那第一步呢,首先我们看啊,嗯,八秒钟进入决赛,所以说我用一个。我用一个变量。变量,我用一个变量,比如说STU来保存什么呢?保存。这个用的时间。就是使用的时间,保存这个时间,这个变量名称,干脆我们就叫time吧。A time。没问题吧,然后呢,第二个我们可以看那性别是不是还有一个变量啊。因为你的性别说是男子组还是女子组,是要根据性别来的,性别也是输入进去的嘛,所以说我们再来定一个变量,比如差对不对,我们有个差,真的。对诶改一下啊叉用这个叉真的。
05:02
G、保存性别。性别这都输入输进去的,三上面两个字是输入的哈,然后呢,这里面肯定要使用到嵌套分支。为什么是要需要使用签证分子,大家看啊,他这样子的进入决赛以后再去判断是男子组还是女子组是不是,所以他先判断是不是能够进入决赛,然后。根据是否进入决赛再去判断是性别,因此呢,我这个就可以让他走了,好,现在呢,我们开始先来把这定义好,Double。Do,那么我们写个time初始化,T初始化,来个0.0。对,再来一个差,真的。那么初始化呢,给他一个空的字符,现在呢,我们先提示用户输入信息。说请输入。这个这个这个跑这个是这个什么呢?叫叫什么。
06:04
时间啊,就是运动的成绩,所以他这个跑步成绩吧,跑步的一个成绩按什么呢?按这个秒来计算的S。好,那拿到这个地方我们就搜一下呗,怎么搜呢,SCFSCSCNNFSCF就拿到这个时间了。那这个时间怎么拿,是不是LF以前是写过的吧,然后呢,地址符time拿到了,拿到过后呢,我们根据这个时间来判断,就是根据这边我们得到的这个时间来判断是否进入决赛。来几句话啊,根据这个time判断是否进入决赛。OK,那就加嘛,如果太猛。在八秒以内,就是小于等于八,如果在这个时间里里面呢,就进入决赛了,进入,否则是不是直接提示淘汰了。
07:02
是不是这样子的?直接写一句话,你被淘汰了。你被淘汰?淘汰。OK。淘淘淘淘哀汰淘汰好,那么进入到这里面过后,是不是我们还要提示他输入什么呀?输入性别,因为这个时候要决定他进入男子主还是女主,请输入性别。那么性别的话呢,我们用M表示,这个ma就是男,非ma表示女。好的,那么现在提示这个信息是不是我们要搜一下呀,那就scan。我们收一把,收的时候呢,用券来接收,放到哪里面去呢?放到我们这个尖里面去,但是有一个问题同学们想。因为这个用户。他他在输入这个性别的输入这个输入输入这个乘积的时候,大家还记不记得,对他在输入这个成绩的时候呢,他要有个回车,有个回车,这个其实会先拿到那个回车,所以说这这个地方需要我们干什么呀。
08:12
我们需要再收一次。再说一次,也就是说上面这个地方呢,拿到升级过后,他这比如说他输了一个3.41回车,回车过后有一个真的呢,是先收到什么呀,先收到的这个是先接收到了,接收到上次。上次的那个回车回车字符,所以说我们还得再接收一次才能接收到我们的性别,大家理解吧,否则的话,这这个地方是不对的哦,这地方是不对的,大家一定要小心,因为我这边是接收一个字符吗?你上面把这个成绩输入了一回车,那回车先被监证拿到了。如果你不再收一次。那你就拿不到这个性别,所以说这个地这次才收到了这次。
09:01
这次才接收的,接收到的。是什么呢?是这个性别,这点大家要小心一点。呃,否则的话这个是要出问题的,那拿到过后再判断嵌套了,如果这个真的。真的,它是等于一个M,这个M呢,我们认为是ma ma呢,我们是难对ma。是男性。那么我们就提示一句话说你进入,你应该进入男子组,请进入男子组决赛男子组。男子组。好的,L是不是L,那如果不是,如果不是这个M,那么我们认为就是女了,因为这只能二选一嘛,所以说提示她另外一句话,请进入女子组。是不是进入女子组。写个女?代码写完了,那同学们,我们来看看代码有没有什么问题先生成解决方案。
10:01
看代码有没有毛病哈。好,我们发现呢。有一个失败,诶有一个失败,是不是上面这个没有注销啊。没血。看哪里有问题。他说ma应该是一个主方法,没有注销。那这个主方法没有注销,应该是在哪里呢?到这儿。先把注销了。好的,那现在我们再来生成一下。再来生成一下。好,这时呢,我们看到零啊成功了,成功现在我们来运行一下,看看这个时候代码能不能像我们想象的那样,按照这个流程来玩。他说先输入成绩,那比如说我们输入一个七,那七肯定是在八秒以内了,回车。他说请输入性别,那我输一个M来am回车。大家看这个地方是因为是不是后面我们这边没有get差两次。
11:00
Get,第一次也是把那个回车过滤掉啊,这个是暂停。好,这个地方在前面我们已经提过,就不用说,再来看一下。这次再来玩一把就没问题了,那首先呢,我们仍然输一个七。好,请输入性别M,那会提示进入男子组。OK,没问题,回撤结束,我们再来,这一次呢,我们输一个女子组号,成绩六。输入一个F,这个就进入女子组,我们再来一个,输入一个成绩大于八的,看看能不能直接就被淘汰,比如说输一个九。九显然大于八,那么它就会直接被淘汰,你被淘汰了,OK,好,这就是我们的一个嵌套分支的练习题。也比较简单对不对,那下面呢,还有一个题需要同学们自己完成,这个题呢是这样子的。做一个出票系统。根据淡季或者是旺季,然后呢,这个月份和他的年龄打印它的票价。
12:02
现在呢,如果是四月份到十月份,我们认为是旺季,那成人的年龄我们规定在18~60之间,就60块钱。如果是儿童,比如小于18岁呢,我们就半价,那当然就30块钱,如果是老人,他的年龄大于六六十的话呢,他就给1/3的价格,1/3就20块钱了。如果是淡季,这这是你看这里面是不是,如果这个月份里面又有三种情况。那么else里面呢?Else不在这个月份里面,就是淡季,在这个淡季里面呢,我们又只分两种情况,成人和其他,就在淡季的情况下,成人40块钱,其他的人20块钱。大家可以把这个题想想怎么做,那这个题呢,老师就不在课堂上给大家演示了,我把答案给大家说一下,同学们可以照这个答案自己敲敲。答案分析的简单。大家看整体思路是这样子的,先定一个月份,再定一个年龄,再定一个价格,价格呢是60块钱。
13:06
对,然后呢,这边我们让他输入一个月份,再提示输入年龄,最后这里判断。是不是在旺季里面大于等于四,小于等于十不就在旺季吗?在旺季里面我们有三个条件。大于60。大于60是不是在这在在这个范围里面呢?然后大于18,大于等于18,大于等于18是不是在这个范围里面,最后一个要是在这个范围里面。那么在淡季的情况下呢?有两种情况,所以说只有一个一非二。这就是这段代码的一个评价,那么我这里就没有去运行,也没有去敲代码了,同学们可以根据老师的这个提示自己去完成一下,好,同学们,那关于嵌套分支,老师就讲这些,我梳理一下讲解的内容。来跟老师思路走一起,那么签到分支我们怎么讲的呢?首先是不是给大家说了一下它的基本介绍和基本语法?
14:04
基本介绍拿过来。对,什么叫做嵌套分支呢?就是在一个分支中又完整的嵌套了另外一个分支,这个完整就拿到啊。这样子在一个分支结构中又完整的嵌套了另外一个分支结构,啊,这样说起来好像更顺畅一点。对,那么这边有个提示,嵌套分支不适合过多,最多不要超过三层,就是if里面可以再嵌套一个,再嵌套一个,不要再嵌套了。基本语法也给同学们捋到这里。基本语法呢,是这样一个结构。好,我整体往后面挪一下。好,整体外面挪一下。也比较简单,对不对,比较简单,这是我们的一个。结构好,我这边给它加粗。标成蓝色。好,紧接着我们把这个说完了,是不是我们就直接做做案例题了?先给同学们讲了一个白米。比赛的案例,这个题呢,老师带着大家写的,我把这个答案给大家部署到这里。
15:05
代码代码演示。好,代码演示呢,我直接还是老规矩,用一个表格放进去,但还有一个题呢,各位朋友,还有一个题就是我们的。做一个出票系统,这个题呢,我已经写到这里了,同学们自己去完成一下啊,其实答案我都已经给大家了,但是呢,我希望同学们就不要先就就最好自己先看一遍啊,自自己先做一遍,然后再去演示哈,这个答案这个自己自己做就行了。好,同学们,那关于签到分支的内容呢,老师就先讲解到这里。
我来说两句