正确解释逻辑

Correct interpretation of logic

我回答了以下问题,想知道我的回答是否正确。

问题:

语句p1、p2、p3、p4在什么条件下执行?

if (a<0) { p1 } else if (b!=0) { p2 }
else if (a==b) { p3 } else if (a==0) { p4 }

注意:问题的格式与上述格式完全相同。

我的回答:

如果 a < 0.

则执行 p1

如果 a >= 0 and b != 0.

则执行 p2

p3 执行如果 a >= 0, b == 0 and a == b - 即如果 a and b are both equal to 0.

p4 永远不会执行,因为两个 a == 0 and a < b == 0 不可能同时成立。

是的,你是对的。但即使 a == 0 那么 b 是否为 0。

如果b为0则执行p3,如果b不为0则执行p2。因此 p4 永远不会被执行。