GESP 八级 · GESP 202512 C++ 八级 第 7 题

选择题 · 答案 B · 考点:函数、运算符优先级

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

题目

已知两个点 $A(x_1, y_1)$ 和 $B(x_2, y_2)$ 在平面直角坐标系中的坐标。下列 C++ 表达式中,能正确计算这两点之间直线距离的是( )。

答案:B

考点

函数运算符优先级

解题思维

位运算:&(与)、|(或)、^(异或)、~(取反)、<<(左移)、>>(右移)。异或性质:a^a=0,a^0=a。

常见错误

区分逻辑运算(&&,||,!)和位运算(&,|,~,!)。左移右移注意符号位的处理(算术右移vs逻辑右移)。负数的位运算要小心。

详细解析(节选)

【考点】sqrt 函数|pow 函数|欧几里得距离|算术运算符优先级

1. 🎯 考纲定位:GESP 八级 C++ 综合应用题,卡住 80% 考生的"公式转代码"能力——把代数符号 ^ 误当幂运算,靠死记硬背而非理解 C++ 运算符体系。

2. 🧠 解题思维:先读公式结构,sqrt 包着平方和,平方用 pow(x-y,2) 或 (x-y)*(x-y),差值用括号锁定,最后调用 sqrt 开方。核心观察:^ 不是幂,pow 才是 C++ 标准幂函数。

3. 🪤 陷阱拆解:A 项把 ^ 当幂,实际是位异或,整个表达式语义崩塌;C 缺 sqrt 只剩平方和;D 用 abs 是曼哈顿距离而非欧几里得。最阴险细节:^ 符号与代数式混淆,只背结论不查语法必选错。

4. 🔄 反命题思维:若改考曼哈顿距离,答案变 D;若求距离平方,去掉 sqrt 即可;若指数改为 3 次方,需 pow(...,3)。刷到同类题先问"命题人想考我什么",别被符号表象带节奏。

同考点真题

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