分支与循环篇

C语⾔是结构化的程序设计语⾔,这里的结构分为{

顺序结构:正常顺序的代码结构

选择结构:if,switch(也可以称为分支结构)

循环结构:while,for,do...while

}

一.选择结构

1.if语句

1.1 if

表达式成⽴(为真),则语句执⾏,表达式不成⽴(为假),则语句不执⾏ 

在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果不是0,则语句执⾏。

1.2 else

如果⼀个数不是奇数,那就是偶数了,如果任意⼀个整数,我们要清楚的判断是奇数还是偶数怎么表⽰呢?

表达式如下:

例1:

输⼊⼀个整数,判断是否为奇数,如果是奇数打印是奇数,否则打印偶数。

 

1.3分支控制多条语句

默认if 和 else 语句中默认都只控制⼀条语句,⽐如:

1.4嵌套语句

在 if else 语句中, else 可以与另⼀个 if 语句连⽤,构成多重判断。

⽐如:要求输⼊⼀个整数,判断输⼊的整数是0,还是正数或者负数。请看如下代码:

 

1.5悬空else问题

如果有多个 if 和 else ,可以记住这样⼀条规则, else 总是跟最接近的 if 匹配。

2.switch语句

 

switch 语句是⼀种特殊形式的 if...else 结构,⽤于判断条件有多个结果的情况。它把多重
的 else if 改成更易⽤、可读性更好的形式。 

二.操作符

操作符也称运算符,操作符分为{

算术操作符

赋值操作符

单目操作符

关系操作符

条件操作符

逻辑操作符

}

2.1算术操作符

算术操作符分为:+, -, *, /, %。

+ 和 - ⽤来完成加法和减法。

运算符 * ⽤来完成乘法。

运算符 / ⽤来完成除法。

运算符 % 表⽰求模(余)运算,即返回两个整数相除的余值。这个运算符只能⽤于整数,不能⽤于浮点数。

注:负数求模的规则是,结果的正负号由第⼀个运算数的正负号决定。

例如:

上⾯⽰例中,第⼀个运算数的正负号( 11 或 -11 )决定了结果的正负号。

2.2赋值操作符

赋值操作符分为:连续赋值与复合赋值 

连续赋值如: 

复合赋值:在写代码时,我们经常可能对⼀个数进⾏⾃增、⾃减的操作但为了方便C语⾔给提供了这样的写法如:

简便运算: 

 

2.3单目操作符 

++、--、+(正)、-(负) 为单⽬操作符

++与--分为前置与后置

前置++的计算⼝诀:先+1,后使⽤

后置++的计算⼝诀:先使⽤,后+1如:

而--与++其意相同

2.4关系操作符

分为:

> :⼤于运算符
< :⼩于运算符
>= :⼤于等于运算符
<= :⼩于等于运算符
== :相等运算符
!= :不相等运算符

2.5条件操作符

条件操作符也叫三⽬操作符,需要接受三个操作数的,形式如下: 

条件操作符的计算逻辑是:如果 exp1 为真, exp2 计算,计算的结果是整个表达式的结果;如果
exp1 为假, exp3 计算,计算的结果是整个表达式的结果。 (可以运行简单if分支语句)

2.6逻辑操作符

逻辑运算符提供逻辑判断功能,⽤于构建更复杂的表达式,主要有下⾯三个运算符:

! :逻辑取反运算符(改变单个表达式的真假)。

&& :逻辑与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。

|| :逻辑或运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)。 

三.循环结构

3.1while循环

 while循环的表达式如下:

while语句的执⾏流程:

 

⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。 

3.2for循环

for循环表达式:

for循环执行流程:

 

⾸先执⾏ 表达式1 初始化循环变量,接下来就是执⾏ 表达式2 的判断部分, 表达式2 的结果如果==0,则循环结束; 表达式2 的结果如果!=0则执⾏循环语句,循环语句执⾏完后,再去执⾏表 达式3 ,调整循环变量,然后再去 表达式2 的地⽅执⾏判断, 表达式2 的结果是否为0,决定循环是否继续。
整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循环。

3.3do while循环

do while循环表达式:

 

do while循环流程:

 

四.break和continue语句
在循环执⾏的过程中,如果某些状况发⽣的时候,需要提前终⽌循环,这是⾮常常⻅的现象。C语⾔中提供了 break 和 continue 两个关键字,就是应⽤到循环中的。
• break 的作⽤是⽤于永久的终⽌循环,只要 break 被执⾏,直接就会跳出循环,继续往后执
⾏。
• continue 的作⽤是跳过本次循环中 continue 后边的代码,在 for 循环和 while 循环中有
所差异的。 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值