选择结构程序设计
C语言有两种选择语句—if 语句和switch语句
if 语句用来实现两个分支的选择结构
switch语句用来实现多分支的选择语句
if语句
1、if语句的一般形式:
if (表达式) 语句1
else 语句2
推广——最常用的3种形式:
-
if(表达式) 语句1 (没有else子句部分)
-
if (表达式) 语句1
else 语句2
-
if(表达式1 ) 语句1 (在else部分又嵌套了多层的if语句)
else if (表达式2) 语句2
else if (表达式3) 语句3
........ ......
else if (表达式m) 语句m
else 语句m+1
注意:else子句不能作为语句单独使用,它必须是if语句的一部分
if语句的嵌套
if() if() 语句1 else 语句2 else if() 语句3 else 语句4 注意:else 总是与它上面的最近的未配对的if配对
switch语句
多分支的选择结构
一般形式:
switch(表达式) { case 常量1: 语句1 case 常量2: 语句2 case 常量3: 语句3 ... ... ... case 常量n: 语句n default: 语句n+1 } 其中——表达式应为整数类型(包括字符型) 各个case标号出现次序不影响执行结果 每一个case常量必须互不相同 一般情况下,在执行一个case子句后,应当用break语句使流程跳出switch结构,即终止switch语句的执行。 最后一个case子句中可不必加break语句,因为流程已到了switch结构的结束处
关系表达式
关系表达式—用关系运算符将两个数值或数值表达式连接起来的句子
关系运算符:
< <= > >= == !=
逻辑表达式
总结:
-
与运算(&&)——两个为真,结果才为真,否则为假
-
或运算(||)——其中有一个以上为真,则结果为真;两个都为假时,结果才为假
-
非运算(!)——如果a为假,则!a为真
逻辑表达式——用逻辑运算符将关系表达式或其他逻辑量连接起来的式子
条件表达式
一般形式—— 表达式1 ? 表达式2 : 表达式3
执行顺序:先求解表达式1,
若表达式1为非0(真)则求解表达式2,此时表达式2的值就作为整个条件表达式的值。
若表达式1为0(假),则求解表达式3,表达式3的值就是整个条件表达式的值
条件运算符优先于赋值运算符