Summary
1) 和0值、常量值(立即数)进行比较时,需要把立即数放在比较符号的左侧
,如if(0 == i)
,避免出现if(i = 0)这样的书写错误。
2)float型变量由于是不精确的表示法,所以在和0值比较时不能直接用==,必须定义一个精度
。如
#define EOSILON 0.00000001
float f = 0.0;
if( (-EPSILON <= f) && (f <= EPSILON) )
{
// ...
}
else
{
//...
}
3)switch分支语句中,case语句中的值只能是整型
或字符型
(字符型本质也是一种整型);一定注意每种case结束的break
。
4)if主要适用于按片
比较的情况,复杂逻辑;switch
主要适用于单值、多分支的情况,离散值
。
分支语句
1、if ... else ...
- if语句用于根据条件选择执行语句
- else不能独立存在并且总是与他最近的if相匹配
- else语句后可以连接其他if语句
if语句中零值比较的注意点:
- bool型的变量应该直接出现于条件中进行比较
- 变量和0值比较时,0值应该出现在
比较符号左边
- float型变量不能直接和0进行比较,应
定义精度
2、switch ... case ...
- switch语句对应单个条件,多个分值的情形
- case语句分支必须要有break,否则会导致分支重叠
- default语句有必要加上,以处理特殊情况
注意:
- case语句中的值只能是
整型
或字符型 - 正常情况放在前面,异常情况放在后面
- default语句只能用于处理真正的默认情况
本文总结自“狄泰软件学院”唐佐林老师《C语言进阶课程》。
如有错漏之处,恳请指正。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。