C语言之分支结构语句

1、C语言语句分类

1)表达式语句

2)函数调用语句

3)控制语句

4)复合语句

5)空语句

控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。控制语句可分成以下三类

1)条件判断语句也叫分支语句:if语句、switch语句;

2)循环执行语句:do while语句、while语句、for语句;

3)转向语句:break语句、goto语句、continue语句、return语句。

2、分支结构之简单if语句

简单的if-else语句的基本结构,语义是如果表达式的值为真,则执行代码块1,否则执行代码块2。

注意:

1)一对 { } 就是一个代码块。

2)适当的使用{}可以使代码的逻辑更加清楚。

3)代码风格很重要。

4)左侧为常量,右侧为变量,代码的书写风格更好。

5)else的匹配,else是和它离的最近的if匹配的。

6if()后面没有分号,直接写{},else后面也没有分号,直接写{}。

int num = 1;

if (5 == num)

//= 赋值;== 判断相等

//左侧为常量,右侧为变量,不能因为少些等号 =,而把num赋值给5

//适当的使用{}代码的书写风格更好

{

       printf("hello world\n");

}

3、分支结构之多重if-else语句

C语言中多重if-else语句,语义是:依次判断表达式的值,当出现某个值为真时,则执行对应代码块,否则执行代码块n

注意:

1)当某一条件为真的时候,则不会向下执行该分支结构的其他语句。

2)存在优先级的差异,从上到下优先级由高到低。

4、分支结构之嵌套if-else语句

C语言中嵌套if-else语句。嵌套if-else语句的意思,就是在if-else语句中,再写if-else语句。

5、分支结构之switch语句

switch语句也是一种分支语句。常常用于多分支的情况。

switch语句时还应注意以下几点:

1)在case后的各常量表达式的值不能相同,否则会出现错误。

2)在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句。编程好习惯在最后一个case语句的后面加上一条 break语句。

3)break语句的实际效果是把语句列表划分为不同的分支部分。

4switch后面的表达式语句只能是整型或者字符类型

5)在case后,允许有多个语句,可以不用{}括起来。

6)各casedefault子句的先后顺序可以变动,而不会影响程序执行结果。

7default子句可以省略不用。

break语句的实际效果是把语句列表划分为不同的分支部分。

如果表达的值与所有的case标签的值都不匹配怎么办?

其实也没什么,结果就是所有的语句都被跳过而已。程序并不会终止,也不会报错,因为这种情况在C中并不认为是个错误。

但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢?

可以在语句列表中增加一条default子句。

把标签default:; 写在任何一个case标签可以出现的位置。

switch表达式的值并不匹配所有case标签的值时,这个default子句后面的语句就会执行。所以,每个switch语句中只能出现一条default子句。但是它可以出现在语句列表的任何位置,而且语句流会像执行一个case标签一样执行default子句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

控酒后卫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值