1. 什么是语句?
C
语句可分为以下五类:
1.
表达式语句
2.
函数调用语句
3.
控制语句
4.
复合语句
5.
空语句
这次介绍的分支循环语句就是控制语句。
控制语句
用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,
C
语 言有九种控制语句。
可分成以下三类:
1.
条件判断语句也叫分支语句:
if
语句、
switch
语句;
2.
循环执行语句:
do while
语句、
while
语句、
for
语句;
3.
转向语句:
break
语句、
goto
语句、
continue
语句、
return
语句。
大家好,今天我来给大家讲讲循环与分支语句。
if语句
我们先来看看if语句的语法结构
1,如果if中的表达式为真那么就执行if中的语句,为假则执行else中的语句 ,(在C语言中‘0’为假非‘0’为真)
2,if和else的”{ }“可以去掉,但去掉后的效果如下
去掉后if和else只能包括它下面的一个语句。
下面举几个例子
这是单分支
这是多分支
通过对比我们可以看出if语句可以嵌套从而实现多种选择,但不管有多少选择我们都只能选一个。
下面我们看看下面这个代码
这个代码的输出结果是什么?我们可以看到有两个if但只有一个else,那else应该和哪个if匹配呢?
这里我们遵循就近原则else与离它最近的那个if匹配。所以这个代码的结果是
万一记不住就在写代码时把”{ }“都加上,这样准没错。
switch语句
switch
语句也是一种分支语句,常常用于多分支的情况。比如
如果还用if进行嵌套的话,那么就太复杂了这时我们可以用 switch。
先来看看switch的语法结构
从图片中有没有感到清晰的简洁 。
运用switch代码如下:
这里我们发现它的确是输出了月份但是它连后面的所有的月份也输出了,这时我们就要用到break
它可以中止代码不让它继续走下去。
修改如下:
如果表达的值与所有的
case
标签的值都不匹配怎么办?
其实也没什么,结构就是所有的语句都被跳过而已,程序并不会终止,也不会报错,因为这种情况在C
中并不认为是个错误。
但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢?
这时就要用到default,当
switch
表达式的值并不匹配所有
case
标签的值时,这个
default
子句后面的语句就会执行。
那么最后的代码如下
以上就是全部内容了,如果有错误或者不足的地方欢迎大家给予建议。