C语言的分支和循环结构
一.分支结构
定义:分支结构也称选择结构核心逻辑,是程序的三大结构之一。分支结构指的是根据条件进行逻辑判断,若条件成立,就执行代码语句,不满足就跳过或执行另一条代码语句。分支结构可以用if,switch来实现。
1.if语句的表达形式:
if语句的执行流程:
if-else语句的表达形式:
当条件表达式为真时,执行语句1;当条件表达式为假时,则执行语句2。
当然,在我们的日常生活中,选择不只有两个。我们可以用嵌套式else-if来实现多分支选择。
嵌套式的表达形式:
关于if语句的注意事项:
1.if条件表达式和语句属于一条语句,只要在语句后面打分号,条件表达式后面不用打分号。
2.if后面的语句有多条时,需要将语句用{ }。
3.当条件表达式为常量时,条件表达式为0,则表达式为假,表达式为非0的数,则表达式为真。
4.当进行if的嵌套时,每一个else与它最近并且未匹配的if匹配,与代码的排布无关。
例题:判断某年是否为闰年
多分支选择还可以用switch来实现。
2.switch语句表达形式:
switch语句的注意事项:
1.switch后面的表达式必须是整型表达式(char也是整型),case后面必须是整型常量表达式。
2.当所有case常量不与表达式匹配时,就执行default(默认)后面的语句。
3.switch语句常伴随着break,指的是跳出switch语句。当没有break时语句会一直执行下去。
例如:
当表达式为常量1时,进入到case常量1中执行语句1,因为没有break使得跳出switch,所以继续执行case常量2的语句,直到遇到break跳出switch语句;
例题:打印星期:
二. 循环结构
在日常生活中,常常需要循环往复的做一件事,比如每日学习等;在程序中,要重复执行一段代码时,就可以用循环结构;
定义:程序中重复执行某一段代码,直到不满足条件时就停止的流程结构。C语言中含有while,do-while,for三大循环语句;
1.while的表达形式:
while循环的执行流程:
当循环条件成立时,则执行循环体,当条件不满足时,跳出循环体;这里的循环体是由一条或多条循环语句形成的;
例题:逆序打印一个数
2.do-while语句的表达形式:
d-while的注意事项:
1.在使用do-while时无论条件是否满足,都会无条件的执行一次循环体,然后进行判断;而while中时先执行条件表达式,条件满足时才会执行循环体。
2.在循环条件表达式的括号后面一定要有分号。
3.for语句的表达形式:
for语句的执行流程:
表达式1:初始化;
表达式2:条件判断;
表达式3:循环的调整;
例题:打印除100~200之间的素数
break,continue,goto语句
break和continue的区别:
break:指的是跳出循环体,相当于终止循环体;
continue:跳过本次循环,执行下一次循环;
例题:
第一题输出结果式0123 第二题的输出结果为1235678910
注意:continue在while和for语句中有差异,在for循环中遇到continue时,跳过本次循环,执行表达式3,而while和do-while遇到continue时,跳过本次循环,执行循环条件表达式。
goto语句:无条件跳转语句(一般不推荐使用)
表达形式:
