第6课 分支语句
2016-03-25 00:36
176 查看
1. if语句
(1)if语句用于根据条件选择执行语句
(2)else不能独立存在且总是与它之前最近的if相匹配
(3)else语句后可以接连其他if语句
(4)if语句中零值比较的注意点
①bool型变量直接出现于条件中,不要进行比较
②变量和0值比较时,0值应该出现在比较符号左边
③float型变量不能直接进行0值比较,需要定义精度
2. switch语句分析
(1)switch语句对应单个条件多个分值的情形
(2)case语句分支必须要有break,否则会导致分支重叠
(3)default语句有必要加上,以处理特殊情况
(4)case语句中的值只能是整型或字符
(5)case语句的排列顺序
①按字母或数字顺序排列各条语句
②正常情况放在前面,异常情况放在后面
③default语句只用于处理真正的默认情况
【编程实例】
3. 小结
(1)if语句适用于复杂逻辑进行判断的情形中
(2)switch语句适用于离散值进行判断的情形中
(3)if语句和switch语句在功能上可能相互替换
(4)if语句对于“按片”分支判断的情形更加简洁
(5)switch语句对于多分支判断的情形更加简洁
(1)if语句用于根据条件选择执行语句
(2)else不能独立存在且总是与它之前最近的if相匹配
(3)else语句后可以接连其他if语句
(4)if语句中零值比较的注意点
①bool型变量直接出现于条件中,不要进行比较
②变量和0值比较时,0值应该出现在比较符号左边
③float型变量不能直接进行0值比较,需要定义精度
2. switch语句分析
(1)switch语句对应单个条件多个分值的情形
(2)case语句分支必须要有break,否则会导致分支重叠
(3)default语句有必要加上,以处理特殊情况
(4)case语句中的值只能是整型或字符
(5)case语句的排列顺序
①按字母或数字顺序排列各条语句
②正常情况放在前面,异常情况放在后面
③default语句只用于处理真正的默认情况
【编程实例】
if和switch的使用示例 | 有趣的角色互换 |
#include <stdio.h> void f1(int i) { if( i < 6 ) { printf("Failed!\n"); } else if( (6 <= i) && (i <= 8) ) { printf("Good!\n"); } else { printf("Perfect!\n"); } } void f2(char i) { switch(i) { case 'c': printf("Compile\n"); break; case 'd': printf("Debug\n"); break; case 'o': printf("Object\n"); break; case 'r': printf("Run\n"); break; default: printf("Unknown\n"); break; } } int main() { f1(5); f1(9); f1(7); f2('o'); f2('d'); f2('e'); return 0; } | #include <stdio.h> void f1(int i) { switch( i < 6 ) { case 1: printf("Failed!\n"); break; default: switch( (6 <= i) && (i <= 8) ) { case 1: printf("Good!\n"); break; default: printf("Perfect!\n"); break; } break; } } void f2(char i) { if( 'c' == i ) { printf("Compile\n"); } else if( 'd' == i ) { printf("Debug\n"); } else if( 'o' == i ) { printf("Object\n"); } else if( 'r' == i ) { printf("Run\n"); } else { printf("Unknown\n"); } } int main() { f1(5); f1(9); f1(7); f2('o'); f2('d'); f2('e'); return 0; } |
(1)if语句适用于复杂逻辑进行判断的情形中
(2)switch语句适用于离散值进行判断的情形中
(3)if语句和switch语句在功能上可能相互替换
(4)if语句对于“按片”分支判断的情形更加简洁
(5)switch语句对于多分支判断的情形更加简洁
相关文章推荐
- 《世界是数字的》读书笔记
- java classloader原理初探
- Apache配置支持目录浏览
- EXCEL 数字+E+数字 自动识别为指数形式的解决办法
- 【数据结构】【C++】二叉树的建立和先序遍历----(1)
- HDU 1062 Text Reverse (模拟)
- 苹果系统的本地推送
- 记js的两个坑:toFixed()和push()
- Java学习-044-文件拷贝
- 简单的账号查询
- 《世界是数字的》读后感
- 解决f.lux总是弹框定位
- Burst Balloons
- HTTP协议详解
- [Typescript] Typescript Enums vs Booleans when Handling State
- 什么是C++虚函数、虚函数的作用和使用方法
- 单点登录SSO的实现原理
- 线上Linux服务器运维安全策略经验分享
- 深入Java虚拟机(1)——Java体系结构
- lua_c++