GESP 二级 · GESP 202312 C++ 二级 第 18 题

判断题 · 答案 A

← 整套速查表 GESP 二级 全部真题

题目

C++ 表达式 3+2 && 5-5 的值为 false。( )

答案:A

解题思维

这题核心就是C++里非零即真的规则。拿到题先按优先级算出左右两边的算术结果,再把非零数看成true、零看成false,最后用&&逻辑与合并。

常见错误

很多考生会误以为&&两边只要有一边非零结果就为真,或者把5-5算错成负数。其实C++规定只有0是false,其他整数都转成true。这题最坑的就是5-5等于0,必须精准算出这个0,否则就会错选B。

详细解析(节选)

考点与命题视角

本题考查GESP二级《信息学基础》中“逻辑运算符”与“运算符优先级”,命题人专挑C++里“非零整数自动转布尔值”这一底层规则下手。绝大多数考生只会背“&&为真才真”的口诀,却忽略C++里非零即真的核心机制,导致在混合算术与逻辑表达式时判断失误。

解题心法

看到题先识别运算符优先级:算术运算+、-高于逻辑与&&,因此先算3+2得5、5-5得0。C++中非零整数自动视为真,零视为假,故表达式等价于true&&false,结果为false。这一类题的通法是“先按优先级拆分子表达式→求值→映射到布尔值→按逻辑规则组合”,对任意混合算术与逻辑的表达式都适用。

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断