5.1 C语言程序中语句的分类
C语言中的语句可以分为以下五类:
- 表达式语句
表达式;
- 函数调用语句
函数名(实际参数表);
- 复合语句
{语句1;语句2;...}
- 空语句
;
- 控制语句,可分成以下三类
if(a=5) 语句;
//表达式的值永远为非0if(b) 语句;
//等价于if(b!=0) 语句;
C语言规定,在缺省
{}
时,else总是与和它上面离它最近的未配对的if
配对。5.2.2 switch语句
switch(表达式) {
case 常量表达式1:
语句组1;
break;
...
[default:
语句组;
break;]
}
表达式一般为int、char和枚举型中的一种,如float类型就不可以。
case
后的语句组可以加{}
,也可以不加。一般不加。- 每个
case
必须各不相同 。 - 每个
case
必须是常量表达式,不能包含变量。 - 当某个
case
后缺少break
时,若执行到此处,会继续往下执行,不会跳出switch,知道碰到break为止。 - 多个
case
字句,可以共用同一语句(组)。5.3 关系运算符、逻辑运算符、条件运算符
| 逻辑运算符 | 含义 | 结合性 | 优先级 | | —- | —- | —- | —- | | ! | 单目、非、表相反 | 右 | 高 | | && | 双目、与、表并且 | 左 | 低 | | || | 双目、或、表或者 | | 更低 |
短路问题:
- 在求解
a&&b&&c
时,只有a为真,才会判别b - 在求解
a||b||c
时,只有a为假,才会判别b