嵌套(nested)if语句是指该if语句为另一个if或者else语句的对象。在编程时经常要用到嵌套if语句。当你使用嵌套if语句时,需记住的要点就是:一个else语句总是对应着和它在同一个块中的最近的if语句,而且该if语句没有与其他else语句相关联。下面是一个例子:
if(j < 20) a = b;
if(k > 100) c = d; // this if is
else a = c; // associated with this else
}
else a = d; // this else refers to if(i == 10)
最后一个else语句没有与if(j <20)相对应,因为它们不在同一个块(尽管if(j <20)语句是没有与else配对最近的if语句)。最后一个else语句对应着if(i==10)。
内部的else语句对应着if(k>100),因为它是同一个块中最近的if语句。
if-else-if 阶梯
基于嵌套if语句的通用编程结构被称为 if-else-if 阶梯。它的语法如下:
if(condition)
statement;
else if(condition)
statement;
else if(condition)
statement;
else
statement;
条件表达式从上到下被求值。一旦找到为真的条件,就执行与它关联的语句,该阶梯的其他部分就被忽略了。如果所有的条件都不为真,则执行最后的else语句。最后的else语句经常被作为默认的条件,即如果所有其他条件测试失