目录
前言
在每一个人的一生中会有一帆风顺的时候,会有需要抉择的时候,而且我们的一生往往会在这样不停循环中度过。c语言也一样有三种基本结构:顺序结构、分支结构、循环结构;通过这三种结构去处理遇到的问题,这里将会简要介绍分支与循环结构。
一、分支结构
1、if语句
基本结构:

其中表达式为真则执行语句,反之表达式为假则不执行语句。(c语言中0表示假,非0表示真)。
注意:当if后面需要包含多条语句的时候一定要将所需语句包含在{}中。
如:

1、if语句中的else
else是if语句不执行的另一种选择,当if语句中的表达式为假,且后面紧跟着一个else的时候则if所包含的语句不执行,执行else所包含的语句。
基本结构:

注意:当else包含多条语句的时候也需要将所需语句包含在{}中。
如:

2、if语句的嵌套使用
在实际问题中我们往往会有多种选择,单独的if语句肯定没法直接解决,在这个时候我们往往会将多个if语句进行嵌套,去处理实际问题。
基本结构有两种:
1.

2.

对于第1种结构表达式1为真则进入去判断表达式2,当表达式2为真则执行语句1,当表达式2为假则执行语句2,执行语句1和语句2的前提条件都是表达式1为真,否则执行语句3。
对于第2种结构从上到下依次判断表达式,哪个表达式为真就进入执行相应的语句,但前提条件是表达式为真前面的表达式必须为假,同时执行了相应表达式的一条语句就不会再执行其他表达式对应的语句。
注意:1.对于第一种结构,else与if的配套遵循就近原则,就是else总是与最近的if语句相匹配,当然一个else不能与多个if相结合。
2.对于第二种结构,由于去判断表达式2的前提条件就是表达式1不满足,所以在写表达式2的时候可以适当省略判断条件。
2、switch语句
除了 if 语句外,C语⾔还提供了 switch 语句来实现分⽀结构。switch 语句是⼀种特殊形式的 if...else 结构,⽤于判断条件有多个结果的情况。它把多重 的 else if 改成更易⽤、可读性更好的形式,用case来表明情况。
基本结构:

这里的expression可以得到一个确定的值,value也有不同的值,当expression得到的值与value的值相等的时候就进入,执行相应的语句,执行完break语句后跳出分支结构,而default存在的意义就是当没有value的值和expression相等的时候就进入default执行它所包含的语句。
注意:这里的value对应的是一个入口,而break是一个出口,expression与哪一个value的值相等只是决定了从哪里进来,只有进来之后遇到的第一个break才能出去,如果一直没有break,则进来后一直执行直到语句执行完,所以如果需要在每种情况执行完后跳出分支结构,一定不要忘了加上break!(default的位置没有限定可以在switch语句中的任何位置)
二、循环结构
1.while循环
while 语句的语法结构和 if 语句⾮常相似。
基本结构:

当表达式为真则执行语句1,执行完一次语句1再去判断表达式是否为真,为真再次执行语句1,直到表达式为假则跳出循环。
注意:1.尽量不要让表达式一直满足,从而造成死循环。
2.当while包含多条语句时和if一样将所包含语句放入{}中。
3.一般在while循环语句中会包含调整部分,就是让表达式的值改变,从而不让其成为死循环。
1.while循环中的break
在while循环中break与switch语句中break类似,while循环中如果执行了break则不论表达式是真还是假都会直接跳出循环。
如:

往往while循环中使用break一般和if语句相结合。
如:

2.while循环中的continue
在while循环中continue表示继续的意思,在循环中的作⽤就是跳过本次循环中 continue 后边的代码,继续进⾏下⼀次循环的判断。
如:

如果执行了continue则不会执行语句3,语句4,直接进行下一次循环去判断表达式1。
continue语句只用于循环语句中,它和break一样一般和if语句相结合使用。
如:

2.for循环
for循环是三种循环中使⽤最多的的一种循环。
基本结构:

表达式1: ⽤于循环变量的初始化
表达式2 :⽤于循环结束条件的判断
表达式3 :⽤于循环变量的调整
注意: 1.这里的执行顺序为表达式1、表达式2、语句1、表达式3。执行完第一次循环后直接从表达 式2开始执行,表达式1只是第一次循环开始时执行一次。
2.for循环中的表达式1、2、3都可以省略,但是尽量都不要省略。表达式2、3省略可能导致死循环,表达式1如果前面已经将循环变量初始化,省略没有影响。
1.for循环中的break
for循环中的break与while循环中的break作用差不多,如果执行了break则不论表达式是真还是假都会直接跳出循环。
如:

for循环中的break通常也与if语句相结合。
如:

2.for循环中的continue
for循环中的continue与while循环中的continue差不多,在循环中的作⽤就是跳过本次循环中 continue 后边的代码,继续进⾏下⼀次循环的判断。
注意:for循环中的continue是不会跳过表达式3,也就是循环的变量调整部分,减少了死循环出现的情况,而while语句中的continue如果在循环变量调整部分的前面就很大概率会出现死循环的情况。
3.do while循环
do while循环的主要特点是:不需要先判断表达式是否为真,先执行一次循环语句,再判断表达式是否为真,去决定是否继续进行循环。(先执行后判断)
基本结构:

⼀般 do while 使⽤在循环体⾄少被执⾏⼀次的场景下,所以在循环语句中 do while 语句的使⽤最少。
1.do while循环中的break和continue
do while 循环中的break和continue与while循环中的break和continue几乎是一模一样,这里就不做过多介绍。
在实际应用中我们可以将上述三种循环进行嵌套使用,从而去解决问题,但一个break只能跳出一个循环,下面将介绍一种可以直接跳出多种嵌套循环的方式。
三、goto语句
C语⾔提供了⼀种⾮常特别的语法,就是 goto 语句和跳转标号, goto 语句可以实现在同⼀个函数 内跳转到设置好的标号处,这样在多个嵌套循环中一个goto语句即可以跳出多个循环结构,让程序更加高效。
基本结构:

这里执行到goto的时候,直接跳转到自命名的地方,即不会执行语句1、语句2,直接执行语句3。
注意:goto 语句如果使⽤的不当,就会导致在函数内部随意乱跳转,打乱程序的执⾏流程,所以建议是能不⽤尽量不去使⽤,但是如果想快速跳出,使⽤ goto 就⾮常的⽅便了。
四、总结
以上就是我所要讲的内容,本文仅仅简单介绍了if语句、switch语句、while循环、for循环、do while循环以及goto语句的使用方式,如果上述有任何问题,请懂哥指教,也希望自己能坚持。如果可以请懂哥温柔一点对待一个初学者,希望每见落日,身上满满的都是成就感。

本文详细介绍了C语言中的分支结构(if、else、嵌套if和switch),以及循环结构(while、for、dowhile和它们的break/continue用法)。此外,还提到了goto语句的特殊用途。适合初学者了解基本控制流概念。
203

被折叠的 条评论
为什么被折叠?



