IF-ELSE的深入
- 嵌套式IF-ELSE:
else总是和最近的那个if匹配
另外,大括号的是否存在也关系着整个程序的含义。例如在下面这个程序中,嵌套的if下跟着一个else,所以他们俩是匹配的。
如果在if(count<20)
printf(“一切正常\n”);加上大括号,这时else就和上面的if相匹配了。像第一张图的格式就比较好,就是if和else后都有大括号。
-
级联的if-else if,格式如下:
if(esp1)
st1;
else if(exp2)
st2;
else
st3 -
IF语句的常见错误:
- If后的大括号不能丢
- 大括号的使用,如程序if(age>60)
salary=salary*1.2
printf(“%f”,salary)
如果输入的age小于60,salary为4000,输出的结果还是4000.(但是我们写的程序的意思是“如果age小于60,就不会有输出结果。”)
3.大括号内的语句缩进一个tab的位置
4.if语句后不能加分号
5.“==”和“=”混淆,前者是关系,后者是动作(赋值)
- 多路分支:switch-case 格式如下:
switch(控制表达式){
case常量:
语句
…
case常量:
语句
…
cdefault:
语句
…
}
在输入一个值时,程序会跳转到相匹配的case处,知道遇到一个break,或者遇到一个switch才会结束。