CCF GESP 2026年9月认证 C++ 4级

所有 GESP 真题,手机上也能刷 · 自动判分 · 错题自动进错题本 扫码去刷
二 判断题
共 10 道 每题 2 分 共计 20 分
第 1 题

执行下面程序后,变量 a 的值为 15 。

int a = 10;
int *p = &a;
*p += 5;
正确
错误
第 2 题
一个函数必须在调用之前既声明又定义。
正确
错误
第 3 题
下面二维数组在内存中按行优先连续存储,因此 *(*(a + 1) + 0) 的值为 5 。
int  a[2][4]   = {{1,  2,  3,  4}, {5,  6,  7,  8}};
正确
错误
第 4 题

执行下面程序后会输出 20 。

void change(int x) {
     x = 20;
}

int main() {
     int x = 10;
     change(x);
     cout << x;
     return 0;
}
正确
错误
第 5 题

下面结构体初始化语句是合法的。

struct Point {
    int x;
    int y;
};

Point p{3, 4};
正确
错误
第 6 题

对于按升序实现的稳定插入排序,移动元素的条件通常应为 a[j] >= key ,这样能够保证相等元素的相对顺序不变。

while (j >= 0 && a[j] >= key) {
    a[j + 1] = a[j];
    j--;
}
正确
错误
第 7 题

下面递推程序计算 $n!$。当 n = 4 时,返回值为 24 。

int factorial(int n) {
    int result = 1;
    for (int i = 1; i <= n; i++) {
        result *= i;
    }
    return result;
}
正确
错误
第 8 题

下面两层循环的时间复杂度是 $O(n²)$。

for (int i = 0; i < n; i++) {
    for (int j = 1; j < n; j *= 2) {
        cout <<  i + j;
    }
}
正确
错误
第 9 题

假设文件能够正常打开,下面程序会把 Welcome 写入 log.txt 。

int main() {
    ofstream fout("log.txt");
    fout << "Welcome";
    fout.close();
    return 0;
}
正确
错误
第 10 题

执行下面程序时, catch (int e) 能够捕获由 throw "Error" 抛出的异常,因此程序输出 Caught 。

int main() {
    try {
        throw "Error";
    } catch (int e) {
        cout << "Caught";
    }
    return 0;
}
正确
错误
判断题部分已到底了。

小程序开心码未来

微信扫码,随时随地练 GESP 真题

  • 手机刷题 · 自动判分,错题自动归档到错题本
  • 绑定网站账号后,查看答案解析等权限自动同步
开心码未来小程序二维码(微信扫一扫) 微信扫一扫