回 帖 发 新 帖 刷新版面

主题:外层if内的条件控制表达式成立那么嵌套内的语句还执行吗?

有以下程序代码:
int main()
{
    int a=1,b=2,c=3,x;
     if(a<3)
       x=3;
     else if(a<2)
       x=2;
     else 
       x=1;}
  执行结果是:x=3;
 难道第一个if后面的条件语句都不执行了吗?









   
     }

回复列表 (共1个回复)

沙发

你这个语句就相当于这个形式:
int main()
{
    int a=1,b=2,c=3,x;
     if(a<3)
       x=3;
       else 
        [color=800000]{if(a<2)     /*这里就相当于是else语句下的复合语句*/
         x=2;                 
         else 
         x=1;}[/color]在if语句嵌套里,当第一个条件成立后,是不会再执行后面的else语句的,因为后面的if语句是包含在与第一个if语句配套的else语句里面的,所以它也是第一个else语句的一部分,当然就不会再执行了

我来回复

您尚未登录,请登录后再回复。点此登录或注册