C语言进阶_分支语句
勇气是在压力之下展现出的优雅。
一.简介
C语言提供了两种分支语句可供选用,一是if.......else....类型,一种是Switch语句。两种语句都能根据条件判断结果执行不同的指令,且能进行替换,但也有诸多差异,下面详细介绍。
二.if语句与Switch语句
2.1if语句
if语句是一种逐个判断条件的分支语句,可以else关键字搭配使用,当条件满足时执行if语句所包含的命令,条件不满足执行与之配对的else语句所对应的命令。逻辑结构如下所示:
2.1.1需注意的是,与else配对的if关键字为该else关键字之前且离它最近的if。
2.1.2条件为0的情形分析
if(......),括号内的条件可为常量、宏、表达式等。
①条件为boolean的0
②条件为整型或字符型0的表达式
为了便于编译器检错,0建议写在表达式的右边,形如if(0==a),当比较符号'=='写错成‘=’时,表达式为if(0=a)此时编译器编译时会报错,而0卸载左边在这种情形下则不会报错。
③条件为Float类型的0.0的比较表达式
因为Float类型的数据是一种不精确存储的数据,当我们给一个Float类型的变量赋值为0.0,它在计算机中的存储结果是偏离0一定值的数,与零比较不一定相同。
2.2Switch语句
Switch语句是一种多条件并列的分支语句,与case配合使用,条件必须为整性或字符型的常量。Switch语句中必须包含Default语句用于执行缺省(默认)的指令,Case后需接break以防止分支重叠,某些情况下也可使部分case语句后无break,但需注意程序的特殊执行流程。
2.3if语句与Switch语句可替换使用
最新文章
- Nim教程【九】
- 拓展:使用终端创建、编译、链接OC…
- android之fragment的使用
- 第二轮冲刺-Runner站立会议02
- XAML Region标签功能
- 运行nodejs的blog程序遇见问题
- SSI
- jQuery 手风琴侧边菜单
- MyBatis(1):MyBatis入门
- Oracle 向上递归、向下递归
- 03(3) 基于GMM-HMM的SR基础
- bootstrap基础
- LaTeX 公式编辑
- 实验五 CC2530平台上ADC组件的TinyOS编程
- 随笔:Oracle实验课(软件系统开发综合实践)B/S结构;java——图书管理系统
- Latex中cls和sty文件有何区别?
- A JSON example
- Mongodb 基础 查询表达式
- linux安装svn客户端rabbitvcs
- hadoop学习通过虚拟机安装hadoop完全分布式集群