如果 a 和 b 均为 int 类型的变量,下列表达式不能正确判断"a 等于 0 且 b 等于 0"的是( )。
- A. `(a == 0) && (b == 0)`
- B. `(a == b == 0)`
- C. `(!a) && (!b)`
- D. `(a == 0) + (b == 0) == 2`
正确答案:B
正确答案:B
(a==b==0) 会先算 a==b 得 0 或 1,再和 0 比,判断的不是「两个都为 0」(如 a=b=5 时 a==b 为 1)。A、C、D 都对,选 B。 💡 比较运算从左往右连着算,a==b==0 不是数学的「a=b=0」。判断「都为 0」要用 &&:a==0 && b==0。想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?
进入 GESPPASS 开始练习