GESP C++ 真题 · 逐题精解
首页 › C++五级真题 › 2026年9月 › 第15题

GESP 2026年9月 C++五级 单选题 第15题

C++五级单选题2026年9月第15题

所属知识点:综合应用(跨题型) 难度要求:掌握 考频:—

数组 a 和 b 按低位在前的顺序保存两个非负大整数。下面代码实现高精度加法,横线处应填写(  )。
vector<int> add(const vector<int> &a, const vector<int> &b) {
    vector<int> c;
    int carry = 0;
    int n = max(a.size(), b.size());

    for (int i = 0; i < n; i++) {
        int sum = carry;
        if (i < a.size())
            sum += a[i];
        if (i < b.size())
            sum += b[i];
        c.push_back(sum % 10);
        ____________________
    }
    if (carry)
        c.push_back(carry);
    return c;
}

正确答案:C

题目解析
本位写入 sum % 10 后,进位应为 sum 除以 10 的商,即 carry = sum / 10;,故选 C。

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习