GESP 四级 · GESP 202403 C++ 四级 第 12 题

选择题 · 答案 C

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

题目

执行下列 C++ 代码时输出中的第 2 行是( )。

int main()
{
    char *s[] = {(char*)"2024", (char*)"3.16", (char*)"GESP"};

    for (int i = 0; i < 2; i++) {
        cout << *s + i << endl;
    }

    cout << endl;
    return 0;
}
答案:C

解题思维

答案C。指针和数组的代码追踪:画出变量和指针的内存示意图,追踪每次赋值后值的变化。

常见错误

指针和数组追踪时画内存布局图可以大大简化理解。

详细解析(节选)

【考点】指针运算|字符串操作|数组指针

1. 🎯 考纲定位(考点定位)

本题考查GESP四级C++大纲中"指针与数组"模块的核心能力——指针算术运算。命题人专门设计这道题卡住两类人:一类是混淆s[i]与*s的学生(把数组元素当字符串整体),另一类是忽略指针偏移规则的人(误以为*s+i会跳到下一个数组元素)。四级高频考点,但细节决定成败。

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