if语句(非此即彼)
if语句用于根据条件选择不同的代码片段;
else不能独立存在且总是与它最近的if相匹配;
else语句后可以连接其他if语句;
if语句中零值比较的注意点:
- bool型变量直接出现于条件中,不要进行比较;
- 变量和0值比较时,0值应该出现在比较符号左边;
若写成a = 0;则不会报错;
- float型变量不能直接进行0值比较,需要定义精度;
若写成a == 0;可能永远为假;
swich语句分析
1)swich语句对应单个条件多个分值的情形;
2)case语句分支必须有break,否则会导致分支重叠;
3)default语句有必要加上,以处理特殊情况;(为空也要加上)
1)case语句中的值只能是整型或者字符型;(只能是常量)
2)case语句的排列顺序:
a)按字母或数字顺序排列;
b)正常情况放在前面,异常情况放在后面;
c)default语句只用于处理真正的默认情况;(case无法处理时,default处理)
default后面也得加break
小结:
1)if语句适用于复杂逻辑进行判断的情形;
2)switch语句适用于对离散值进行判断的情形中;
3)if语句和switch语句在功能上可以进行互换;
4)if语句对于“按片”分支判断的情形更加简洁;(一个范围)
5)switch语句对于单值多分支的情形;
if换成switch:
switch换成if:
do先执行,后判断;
while先判断,后执行;
for先判断,后执行,比while更简洁;
break终止循环;
continue结束本次循环,进行下次循环,并不终止循环;
问:能否用continue代替break?
不能,switch不是循环语句,是分支语句,故不能。
do
{
}while(0); //只执行一次循环体,可与break共同使用。
小结:
- while适用于循环次数不定的场合;
- for适用于循环次数固定的场合;