c语言分支和循环语句2

本文详细介绍了C语言中的if语句和switch语句的语法结构、工作原理,包括if-else条件判断、悬空else的匹配规则,以及switch多分支处理和default子句的应用。

目录

1.分支语

1.1 if 语句

1.2 switch 语句


1.分支语句

什么是语句

C语句可分为以下五类: 1. 表达式语句 2. 函数调用语句 3. 控制语句 4. 复合语句 5. 空语句

1.1 if 语句

语法结构: if(表达式)

                     语句;

 

 if(表达式)  

  语句1;

  else    

  语句2; 

 

 if(表达式1)    

 语句1;

 else if(表达式2)  

 语句2;

 else    

 语句3

 

 解释一下: 如果表达式的结果为真,则语句执行。 在C语言中如何表示真假? 0表示假,非0表示  真。

悬空else

else的匹配:else是和它离的最近的if匹配的。

1.2 switch 语句

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

说明:

1. switch后面的( )里面的值必须是整型表达式的值;case后面的值必须是整型常量表达式的值(当然字符也是可以的,字符底层存储的也是ASCII码值)。

2.break是实现分支的真正要义之所在(switch的入口是case,出口是break;break的作用是直接跳出

   当前的switch语句,不执行后续操作)。

3.当然,并不一定所有的case后面的都要加上break:


 default子句

如果表达的值与所有的case标签的值都不匹配怎么办? 其实也没什么,结构就是所有的语句都被跳过而已。 程序并不会终止,也不会报错,因为这种情况在C中并不认为是个错误。 但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢? 你可以在语句列表中增加一条default子句,把下面的标签 default: 写在任何一个 case 标签可以出现的位置。 当 switch 表达式的值并不匹配所有 case 标签的值时,这个 default 子句后面的语句就会执行。 所以,每个switch语句中只能出现一条default子句。 但是它可以出现在语句列表的任何位置,而且语句流会像执行一个case标签一样执行default子句。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值