1. if结构:
if(条件表达式)
{
//代码块
}
执行顺序:判断条件表达式→满足条件→执行代码块→结束
→不满足条件→结束
2. if-else结构:
if(条件表达式)
{
//代码块
}
else
{
//代码块2
}
执行顺序:判断条件表达式→满足条件→执行代码块1→结束
→不满足条件→执行代码块2→结束
3.多重if结构:
if(条件表达式1)
{
//代码块1
}
else if(条件表达式2)
{
//代码块2
}
else
{
//代码块3
}
执行顺序:判断条件表达式1→满足条件→执行代码块1→结束
→不满足条件→判断条件表达式2→满足条件→执行代码块2→结束
→不满足条件—执行代码块3→结束
3. 嵌套if结构:
if(条件表达式1)
{
if(条件表达式2)
{
//代码块1
}
else
{
//代码块2
}
}
else
{
//代码块3
}
执行顺序:判断条件表达式1→满足条件→判断条件表达式2→满足条件→执行代码块1
→不满足条件→执行代码块2
→不满足条件—执行代码块3
注意:只有当满足外层if的条件时才会判断内层if的条件,else与离它最近的那个缺少else的if相配。
4. switch结构:
switch(int/char/string 表达式)
{
case 常量表达式1:
//语句1;
break; //必须有
case 常量表达式2:
//语句2;
break; //必须有
……
default:
//语句块n;
break;
}
执行顺序:计算表达式的值→与case块后的常量表达式比较→执行表达式值与常量表达式值相匹配的case块 →没有匹配的case块时执行default块中的语句
注意:每个case块和default块都必须有break语句,除非两个case块指尖没有其他语句。
case子句摆放是没有顺序的,但是两个case语句不能具有相同的值。