考虑下面的程序片段
null
if(a > b) if(b > c) s1; else s2;
s2将在以下情况下执行: (A) a<=b (B) b>c (C) b>=c和a<=b (D) a>b和b<=c 答复: (D) 说明: 代码实际上是这样工作的:
if(a > b) { if(b > c) s1; else s2; }
外部if语句的作用域一直到内部if和else语句的末尾。为了执行s2,(a>b)应该为真,因此控件进入内部块,(b>c)应该为假。所以,(b<=c)应该是真的。正确答案是(D)。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END