GESP 三级 · GESP 202309 C++ 三级 第 3 题

选择题 · 答案 C

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

题目

已知大写字符 'A' 的 ASCII 编码的十六进制表示为 0x41,则字符 'L' 的 ASCII 编码的十六进制表示为( )。

答案:C

解题思维

这题考ASCII编码和十六进制运算。拿到题先别数字母个数,要算'A'到'L'在编码表里的差值,然后把这个差值加到0x41上,记得十六进制加法里10是A、11是B,直接心算就行。

常见错误

最容易栽跟头的是把字母顺序差当成编码差,以为A到L隔了11个字母,编码就加11(十进制),结果算出十进制数再转十六进制,容易转错。还有人看到0x41就下意识想转十进制算,反而绕远路。另外别把选项A当成'Z'的编码,那是0x5A;选项D的52其实是十进制写法,对应十六进制34,完全对不上号。

详细解析(节选)

考点与命题视角

GESP三级《C++语言程序设计》第三章“数据类型”,明确将字符类型归为整型,考点就是“字符与整数的相互转换”。命题人放这道题,就是要卡住那些看到字符就只记得字母顺序、完全忘记编码规则的人——他们以为'A'到'L'中间隔了11个字母,直接数数就能选,殊不知数数数的是位置差,而不是十六进制数值差。题目给的是十六进制0x41,选项全是纯数字,考生必须自己会进制转换,或者直接用十六进制加法,这才是命题人想考的“编码运算”能力。

解题心法与计算过程

看到字符求编码,先定位已知量'A'=0x41,再确定目标'L'与'A'的偏移量。大写英文字母从'A'到'Z'顺序编码,'L'是A之后的第11个字母(A→B→C→D→E→F→G→H→I→J→K→L,11步),所以'L'的编码=0x41+11。这里的关键是十六进制加法:0x41+11=0x41+0x0B=0x4C。一步到位,别转成十进制再算,容易出错。

陷阱拆解

考频与趋势

“数据表示”类题目在题库中累计103题,覆盖12个级别,其中2023年考了23题,2024年达到30题,2025年回落至20题,2026年又回升到10题,呈现“近三年高频、偶有波动”的趋势。“进制与编码”累计149题,2023年17题、2024年29题、2025年17题、2026年17题,同样在2024年达到峰值后趋于稳定。

预测

基于上述数据,2024年“进制与编码”考频显著高于往年,2025、2026年已回落至17题左右,说明命题组在2024年集中释放了相关考点,后续年份大概率保持中等频率,不会再次出现2024年的爆发式增长。因此,未来考试仍可能以“字符编码与十六进制运算”为切入点,但题目难度和数量会趋于平稳,考生只需扎实掌握ASCII表顺序与十六进制加减法即可应对。

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