c语言的分支和循环语句

C 语言是一种结构化的设计语句,它主要有:顺序结构,选择结构,循环结构。本文将会介绍:if 语句, switch语句, while,for,do while循环语句。

1.1:if语句是一种条件语句,它表示为只要条件成立就执行下边的分支。(图解如下)

 而当条件表达式为0的时候,如果下方有else语句就将被执行(图解如下)

 实践代码如下:


if语句也可以实行嵌套,如:多个 if 在 if 的语句中,或多个 if 嵌套在 else 语句中。(图解如下)


 

一般的多重语句的 if 嵌套格式用 else if  ,用来表示有多重选项,而 else if 后面跟小括号 用来表示条件语句,此时的 else 语句在 if 与 else if 都不执行时才会执行。(图解如下)

注:else 总是和他最近的 if 进行匹配。

1.2 switch语句:

switch 语句就像开关一样当条件表达式成立时,它便执行下边的分支语句,如:当它条件为大于0的时,它便执行相对应的case x,当执行完case x时便会一直向下执行,直到遇见break。诺没有对应case x,便会执行default语句。诺没有default便什么都不会执行。

图解如下:

(switch语句的嵌套和上述类似,但注意遇到break只跳出一个switch)

下面便进入循环语句:

1:

语法形式为 while().

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

它与if 语句的形式特别相似,我们可以来对比一下:

都是当后面的条件表达式满足时执行下列语句,不同的是if语句只执行一次但是while会一直执行下去直到条件不再满足或者在语句中碰到break。图解如下:

如我们要打印从一加到一百的值:

练习
输⼊⼀个正的整数,逆序打印这个整数的每⼀位
例如:
输⼊:1234,输出:4 3 2 1
输⼊:521,输出:1 2 5
1:要想得到n的最低位,可以使⽤n%10的运算,得到的余数就是最低位,如:1234%10得到4
2 :  要想去掉n的最低位,找出倒数第⼆位,则使⽤ n=n/10 操作就可以去掉最低位的,如:
n=1234/10得到123,123相较于1234就去掉了最低位,123%10就得到倒数第⼆位3。
3 . 循环1和2两个步骤,在n变成0之前,就能到所有的位
2.
for 循环的语法形式为 for(表达式1; 表达式; 表达式3)
表达式1:循环变量的初始化。
表达式2:循环条件的判定。
表达式3:循环变量的调整。
首先执行 表达式1 初始化循环变量,接下来就是执行 表达式2 的判断部分, 表达式2 的结果如果
==0,则循环结束; 表达式2 的结果如果!=0则执⾏循环语句,循环语句执行完后,再去执行表 达式
3 ,调整循环变量,然后再去 表达式2 的地⽅执行判断, 表达式2 的结果是否为0,决定循环是否继
续。
整个循环的过程中,表达式1初始化部分只被执行1次,剩下的就是表达式2、循环语句、表达式3在循
环。
图解如下:
诺用for 循环打印从1加到一百,代码为:

注意:如并不需要表达式可以直接用分号过度

如:for( ;          ;         ;)

下面我们做while 与 for 之间的对比:

for while 在实现循环的过程中都有初始化、判断、调整这三个部分,但是 for 循环的三个部 分非常集中,便于代码的维护,而如果代码较多的时候 while 循环的三个部分就⽐较分散,所以从形式上 for 循环要更优⼀些。
3:
do   while循环的语法形式为
do
        语句
                while()
while for 这两种循环都是先判断,条件如果满足就进⼊循环,执行循环语句,如果不满足就跳 出循环;
而  do while 循环则是先直接进⼊循环体,执行循环语句,然后再执⾏ while 后的判断表达式,表 达式为真,就会进行下⼀次,表达式为假,则不再继续循环。
在我们循环语句中 while 与 for 是比较常用的而 do while 用的较少。图解如下:
do while 循环中先执行图上的“语句”,执行完语句,在去执行“判断表达式”,判断表达式的 结果是!=0,则继续循环,执⾏循环语句;判断表达式的结果==0,则循环结束。
所以在 do while 语句中循环体是至少执行⼀次的,这是 do while 循环比较特殊的地方。
诺用do  while 循环写出从一加到一百:
zhi
在循环执行的过程中,如果某些状况发生的时候,需要提前终⽌循环,这是⾮常常⻅的现象。C语⾔中
提供了 break continue 两个关键字,就是应⽤到循环中的。
break 的作用是用于永久的终止循环,只要 break 被执行,直接就会跳出循环,继续往后执
行。
continue 的作用是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环中有所
差异的,因为 continue虽然 可以帮助我们跳过某⼀次循环 continue 后边的代码,直接
到循环的判断部分,进行下⼀次循环的判断,如果循环的调整是在 continue 后边的话,可能会造成
死循环。
可以自己把上述代码转换一下,自己体会体会。
  • 18
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值