认识分支与循环(上)——分支

        hello,大家好,这里是小程。学C语言也有一段时间了,今天就当做是回顾复习知识,给大家讲讲C语言中的分支语句,也称选择性语句。 

        C语言中,存在着三种控制语句,分别是:

                                                一.条件判断语句(选择性语句):if语句、switch语句;

                                                二.循环执行语句:do while语句、for语句、while语句;

                                                三.转向语句:break语句、continue语句、goto语句、return语句 。 

         话不多数,我们开始今天的正题。

有上述分类可知,有两种分支型语句:

1.if语句

if语句的表达形式以及用法

if(表达式)
{
    语句
}

其中,括号内的表达式就是判断的条件,由if的英文,我们不难看出,只有满足了括号内的判断条件,才会执行大括号{}中的语句。

在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,对此,我们可以举出以下例子用以更直观的理解这句话:

对此,我们不难看出,若括号内的值为零则不执行if语句,若不为零则会执行;

在学习  if  语句的同时我们还要学会如何判断if语句中的条件,下面我将讲解在if语句中常用来充当判断条件使用的关系操作符与逻辑操作符:

(1)关系操作符:

C语⾔⽤于⽐较的表达式,称为“关系表达式”,⾥⾯使⽤的运算符就称
为“关系运算符”,主要有下⾯6个:
•    >  ⼤于运算符
•    <  ⼩于运算符
•    >=  ⼤于等于运算符
•    <=  ⼩于等于运算符
•    ==  相等运算符
•    !=  不相等运算符

关系表达式通常返回 0 或 1,表⽰真假。
C语⾔中, 0 表⽰假,所有⾮零值表⽰真。⽐如,“20 > 12”  返回 1 ,“12 > 20” 返回 0 。
关系表达式常⽤于 if 或 while 结构。以下举出关系操作符的运用:

对此我们不难看出,当括号内的表达式为真时,我们将会执行语句。

注意:相等运算符 == 与赋值运算符 = 是两个不⼀样的运算符,不要混淆。相等运算符是用来比较是否相等的。

(2)逻辑运算符:

逻辑运算符提供逻辑判断功能,⽤于构建更复杂的表达式,主要有下⾯三个运算符。
• ! :逻辑取反运算符(改变单个表达式的真假)。
• && :“与”运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。
• || :“或”运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)。               对此,我讲举出以下例子以方便大家理解:

“与”运算符(&&):

很明显,只有当我输入的大于3并且小于5时,程序才会执行语句。

“或”运算符(||):

在“或”运算符中可看出,和“与”运算符不同,我们只需满足其中一个条件,程序就会执行语句。

逻辑取反运算符(!):

从图中我们可看出,在条件判断原本正确的情况下,加上!会使真假倒转,从而得出与原本运行代码相反的结果。

接下来继续讲解if分支语句。

if……else……语句:

分支分支,但这里怎么只有if这一种路径呢,这时我们不得不引用  if……else…… 语句来完善这个分支了,其表达式如下:

if(表达式)
{
    语句1
}
else
{
    语句2
}

对此,我将举出例子方便大家理解:

不难看出,若是if的判断条件不对的话,程序将会进入另一条分支(else分支)之中并执行其中的语句,此时便是if分支语句的全貌了。

if的嵌套:

分支不是只有两条分支的,因此我们可以在if中嵌套多个if语句来实行多个分支,举例如下:

由于嵌套的复杂性,我们可以将代码做出优化,如图:

此时的代码显而易见的规整了一些。讲解了if语句后接下来该是switch的登场 。                             

2.switch   

 对于switch语句来说,就像其名字一般,是一个开关。                                                                    switch语句是⼀种特殊形式的if...else 结构,⽤于判断条件有多个结果的情况。它把多重
的 else if 改成更易⽤、可读性更好的形式。switch语句的写法如图所示:

switch (表达式)
 {
case value1:
 statement
case value2:
 statement
default:
 statement
}

当表达式的值等于其中一个 case 后面 value 的值时,程序讲打开开关,执行其中的语句。

对于switch语句的使用,我将举出以下例子:

易看出,当switch()中的值为1时,程序讲进入到 case 1 当中并执行其中的语句;

而当switch()中的值不符合任意的case后面的值时,程序将进入到default中并执行其中的语句;且每个语句后的break是非常重要的,若是没有break,程序将回进入所有的开关以及default之中,并执行其中的语句。

 以上就是我对分支语句的了解,如有出错请在评论区留言,我们下篇再见。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值