C语言 if语句的嵌套
在if语句中又包含一个或多个if语句,称为if语句的嵌套。
1.语法格式
嵌套的if语句既可以嵌入到if后面的语句组中,也可以嵌入到else后面的语句组中。所以有如下两种形式:
(1)格式1
if (表达式1)
{
if (表达式2)
(语句组1;)
else
[语句组2;)
}
else
{语句组3;}
(2)格式2
if (表达式1)
{语句组1;)
else
{
if(表达式2)
{语句组2;}
else
{语句组3;}
}
2.说明
(1 )在if语句的嵌套结构中,一定要注意else与if的匹配关系。C语言规定,在if语句的嵌套结构中,else子句总是与在它上面、距它最近、且尚未匹配的i配对。
(2)为明确匹配关系,避免匹配错误,建议将内嵌的if语句一律用花括号括起来。
(3)不管是格式1还是格式2出现的嵌套语句,其本质并无差别,一个算法往往既可以使用格式1的形式实现,也可以使用格式2的形式实现。
(4)书写时,可以采用缩进形式以清楚地表达层次关系。例如:
if()
if()
if()语句1;
else语句2;
else
语句3;
else
语句4;
(5)if语句允许嵌套,但嵌套的层数不宜太多。在实际编程时,应适当控制嵌套层数(2〜3层)。其实多分支if语句可以认为是if嵌套的一个特例。
点击加载更多评论>>