前言:
我本来分支与循环想搞个上下的,但是由于我上一篇写了太多了,所以我便将上又分出了一个中,行了不多废话直接进入正题。(这篇文章怕得五月四日才会出现因为我五月三日出去玩的了,所以继续当鸽子)
正题:
一.switch语句
除了if语句之外,c语言还提供了另一种分支语句,那就是接下来要讲的switch语句。
switch语句是一种比较特殊的if …… else语句,它可以用于判断多个条件的情况,它可以把if else变得看起来更简洁,接下来我通过编译器来展示它的用法(我感觉比我手写强一点,前几天写的那个纸张的我感觉不太行)。
上面我简单的叙述了一下switch语句的简单用法,等会我会用例题的方式帮助读者更好的理解这个的用法,先讲述一下用switch的注意事项
1.switch后面的判断表达式必须是整型(字符型也可以,它也算是整型)
2.case后面的数必须是整型常量表达式。
1.1 if语句和switch的对比
例1 输入任意一个整数,计算除3之后的余数
以上便是if和switch之间的比较,可以很明了的看出这两个之间的区别,代码的行数明显少了,在特定的情况下switch还是蛮好用的(这个得自己判断,多刷题,不要只会纸上谈兵),相信有很多读者注意到了我每次case之后的break,下面我来介绍它的具体作用。再插一句:case和它后边的数一定要有空格,不然会报错
1.2switch语句中的break
break在英语中有打断的意思,同样的,它在c语言中也是这种意思,在case中的条件成立以后它会立刻暂停往下读,直接跳出了分支语句不会在进行下去,所以只有break在,才能体现出它分支的效果,下面展示一下不加break的例2
从这里就可以直白的看出break的重要性,没有它这个语句就会一直执行到最后一个case,更多的break语句我会在后面讲述的(因为break的用法不仅仅体现在这里),下面上一个小小的例题来让你们更加深刻的明白switch的用法
例3.输入1~7的数字,来表示星期几。
以上是例3的代码实现,代码总体来说写起来并不困难,只要弄懂了switch语句的模板,那么这个代码就会变得很简单,相信一定有不少的读者朋友看到了default语句的出现,并且很纳闷为什么这里会用上这个语句,不要着急,下面我将会论述这个词的作用。
2.3.switch语句中的default
我们在使用switch语句的时候,经常会碰到一种情况,那就是switch后面的值无法匹配到case语句后面的值(驴唇不对马嘴【字面意思】),就比如上面那个代码,我如果输入112,那么case后面的值将和112对应不起来,这时候为了让代码更美观,default便会出现,它的作用就是如果碰到驴唇(switch)不对马嘴(case),便会输出它后面的值,所以上边我让其后面的值来提醒别人,相信不少读者会想可不可以这样以后可以跳转到开头重新输入,不要着急,我会在后面goto语句的时候来对这个代码进行进一步的完善。
2.4.switch语句中case与default的顺序问题
很多读者可能也会有这样的疑惑(case和default需要考虑顺序吗?),其实,它俩的位置对于整个代码的实现并没有影响,毕竟我前面已经讲述了default的用法了,所以在哪里它都一样,不过,由于书写习惯,通常它会在最后面。
这便是我今天要讲述的switch语句,今天出去玩了一天,差点没写完,大家五一玩的怎么样?希望朋友们在整个假期里都很开心,明天我将会写完最后一篇,那篇将要讲述循环怎么用,下期再见了朋友们