1 用if语句实现选择结构
if语句的一般形式:
if(表达式)语句1
[else语句2]
if语句中的"表达式"可以是关系表达式、逻辑表达式,甚至是数值表达式。其中最直观、最容易理解的是关系表达式
根据if语句的一般形式,if语句可以写成不同的形式,最常用的有以下3种形式:
(1)简单if语句:
if(表达式){
语句1 ;(没有else子句部分)
}
(2)if-else语句:
if(表达式){
语句1;
}
else{
语句2;
}
(3)多重if-else语句:
if(表达式1){
语句 1(在else部分又嵌套了多层的if语句);
}
else if(表达式2)
语句 2;
}
else if(表达式3) {
语句 3;
}
else if(表达式m){
语句 m(内嵌语句);
}
else {
语句 m+1;
}
注:当某一条件为真的时候,则不会向下执行该分支结构的其他语句
(4)嵌套if-else语句:
if(表达式){
if(表达式){
语句1;
}
else{
语句2;
}
}
else{
语句3;
}
关于关系运算符和关系表达式,逻辑运算符和逻辑表达式可以看我写的这篇文章 https://blog.csdn.net/WYCWYQR/article/details/127069306?spm=1001.2014.3001.5502
2 用switch语句实现多分支选择结构
switch语句是多分支选择语句,一般形式如下:
swwitch(表达式)
{
case 常量1 :语句1;
case 常量2 :语句2:
...
case 常量n :语句 n;
default :语句n+1;
}
注:1.上面的switch一般形式括号内的“表达式”,其值的类型应为整数类型(包括字符型)
2.switch下面的花括号是一个复合语句
3.可以没有default标号,此时如果没有与switch表达式相匹配的case常量,则不执行任何语句,流转到switch语句的下一个语句
4.各个case标号出现次序不影响执行结果
5.每一个case常量必须互不相同,否则就会出现互相矛盾的现象(对switch表达式的同一个值,优良或多种执行方案)
6.case标号只起标记作用
C 语言中 嵌套 switch 语句的语法:
switch(ch1) {
case 'A':
printf("这个 A 是外部 switch 的一部分" );
switch(ch2) {
case 'A':
printf("这个 A 是内部 switch 的一部分" );
break;
case 'B': /* 内部 B case 代码 */
}
break;
case 'B': /* 外部 B case 代码 */
}