今天做题时,遇到了这么一个题目,刚看到的时候有些蒙:
但思考后发现:这次题目考察基本的if(表达式):
“表达式”的值不等于0(”逻辑真“)时,执行接下来的语句。否则跳出当前所在语句组。
(同样适用于whlie(表达式))
题目中: if(!ok1) ok1=5; !5 <=> !逻辑真 即可认为 !ok1==0,所以不执行x=1; 跳转到下一条else if
else if (ok2) x=10; ok2=0; 所以不执行x=10; 跳转到x=-1; 本题答案为 -1。
但是!!!
分析这个题的结构可知:无论前面怎么推论,最后答案都会是 -1 !!!
因为 x=-1; 这个语句根本需要任何条件就可以输出啊!
所以前面就是蛊惑你的坑,但借助这个坑也学到了一些知识啦