上一章的题目不知道大家回答对了么,答案是这样的:
![ac3cae074a8915fc2802f4abec0b2080.png](https://img-blog.csdnimg.cn/img_convert/ac3cae074a8915fc2802f4abec0b2080.png)
那么这一章我们来讲讲C语言的另外的一种控制结构分支之if。
我们先来看一下if和if…else的结构:
· if(expression)
statement
· if(expression)
statement1
else
statement2
上面就是这两个的基础结构,那现在我们还是从一个例子开始来了解if和if...else的结构吧。
假如我们需要输出1到10之间的偶数,那我们来看一看用if应该怎么做。
![ef267f2171d0509ed590eb5570afee90.png](https://img-blog.csdnimg.cn/img_convert/ef267f2171d0509ed590eb5570afee90.png)
那用怎么来写这段代码呢,因为要判断1到10个数所有我们要用到循环,那怎么来判断是不是偶数呢,这个我们用在讲运算符的时候讲的到%运算符,在10以内的偶数有一个特点就是都能被2整除,那也就是说i%2=0(如果不清楚取模运算符的话可以去看下我以前的运算符章节),那我们来看下代码:
![f2be7160d2587cb13a2fba301c2cbf70.png](https://img-blog.csdnimg.cn/img_convert/f2be7160d2587cb13a2fba301c2cbf70.png)
那么我们对这个例子在修改下,如果我们还需要输出奇数的个数,那应该怎么操作呢,这里我们就用if...else来解决这个问题
![ff75b3e4d4b65c5b70322df3c96e9e21.png](https://img-blog.csdnimg.cn/img_convert/ff75b3e4d4b65c5b70322df3c96e9e21.png)
那么同样我们代码只要稍微改下:
![69614cc73cfeaa64917ef47a9a3449cf.png](https://img-blog.csdnimg.cn/img_convert/69614cc73cfeaa64917ef47a9a3449cf.png)
好了,通过这个例子大家应该对if和if...else分支有所了解了,当然在实际情况下,我们还会用到多重选择if...else if….else...这种形式
![9fb81dd413d4277a516d8e6340751784.png](https://img-blog.csdnimg.cn/img_convert/9fb81dd413d4277a516d8e6340751784.png)
当然还可以有更多的else if,就如下图。
![09beb60afecc0941b0c1a8fe1f3b0cb7.png](https://img-blog.csdnimg.cn/img_convert/09beb60afecc0941b0c1a8fe1f3b0cb7.png)
那么当有众多if和else的时候计算机是怎样判断哪个if对应哪个else的呢?一般的规则是这样的,else与和它最接近的一个if相匹配。
![b5bf5d056615795a66b4735ea1c8a3b8.png](https://img-blog.csdnimg.cn/img_convert/b5bf5d056615795a66b4735ea1c8a3b8.png)
我们来总结下,if和else的结合有三种形式:
1. if(expression)
statement
2. if(expression)
statement1
else
statement2
3. if(expression1)
statement1
else if(expression2)
statement2
else
statement3
经过这一章的介绍,我相信大家应该对if和else的组合有了深刻了解了。