分支与循环(第一弹)

1.选择分支结构:

选择结构:if-else语句、switch语句

1.if-else分支语句

1.if语句

if 语句的格式:if(表示式)

                   {语句}

if语句——首先判断表达式的值是否为真,当表达式的值为真时执行对应语句,注意:在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果不
是0,则语句执⾏。

aa8fbeec158348409dedcaf924b209fe.png

注意:if语句默认控制一条语句,当我们想控制多条语句时,可以用大括号将多条语句括起来来实现多条语句的控制。

fc1dc69e636b4b91a81629ad902b560d.png

2797392cc8b94c7fb38f428700df7f05.png

2.else语句

需要注意:else语句必须与if成对使用,但if 语句本身可以单独使用。

配对原则:与之上方最近且没有配对的if配对。

else的使用:当与之配对的if 表达式为假时,执行else语句实现分支。如图所示:

2361aeeb9beb49a1a42ca442e7e65eec.png

3.if的嵌套

if 语句中可以嵌套其他分支语句,用一个if 语句来控制其他分支语句。具体如图所示:

1fc02682741642109157700e2c05725e.png

当1.if语句判断为真时,继续判断第二条if语句,如果第二条if语句为真,则执行对应语句,如果第二条if语句为假,则执行else语句,需要注意的是:如果第一条if语句为假,则跳过与之嵌套的所有语句。

3427fbce355b401cb523231c9a147ab8.png

当有多个if、else时,一定要注意else的配对(多用大括号可以增加代码的可读性)

7b7a2636b2cd47d2af2e69ededc66041.png

例如上图中,由于排版问题我们很容易认为else与第一个if配对,其实仔细看时会发现实际上else与第二个if配对,但如果我们对代码略微修改,如下图所示:

3f2404b974064f1da295502fa20c12bb.png

根据输出我们不难看出执行的是第二条else语句,这时我们可以看出第二条if与第一条else配对,而第一条if与最后一条else配对,当程序开始执行时,首先判断第一条if的表达式,if表达式判断为假,于是执行与之配对的else语句,中间的部分已经跳过并不执行。

2.switch语句

格式:

3bd0a03448924f9fae78b65bb5f796d6.png

switch语句可以认为成一种特殊的if-else语句,我们按照switch后表达式中的值挨个对照下面case后的值,当有对应的值时,执行对应的case语句,如果没有对应的值,则执行dafault语句。

*default的位置没有要求,如果default写在case语句之前,在程序依然会先比对case后的值,在比对失败后执行fault,只是一般书写习惯而言,我们经常将default写在最后。

82d3a5f348334334b2d8fc45b3b2e1b4.png8efa7e201b6647a8994dfcb83ac788f8.png

需要注意:当语句后没有break时,程序执行对应语句后并不会停下来,而会继续执行下一条语句,直到遇到break或程序语句全部执行结束为止。

91a2ea92a319407ea3ff6c59748cc3ac.png987e1258f9d7489caefed0fc81dc17d2.png

今日分享到此结束,明天见啦!

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值