我爱橙 发表于 2022-4-28 12:51:39

EX5.5 if三重 √

本帖最后由 我爱橙 于 2022-5-2 16:56 编辑

下面程序的运行结果是

main( )
{ int x=100, a=10, b=20, ok1=5, ok2=0;
    if (a<b)
   if (b!=15)
      if (!ok1)
            x=1;
      else
             if (ok2) x=10;
   x=-1;
   printf("%d\n", x);
}

A.-1    √


B.0


C.1


D.不确定的值


风车呼呼呼 发表于 2022-4-28 13:20:45

这有什么问题吗?且不说前面if嵌套的判断过程,按照这代码的缩进格式,也没有大括号划定if作用域,最后一条赋值语句x=-1;应该是在最外层了,不管前面干嘛,最后x还是赋值为-1
页: [1]
查看完整版本: EX5.5 if三重 √