林老师 · 客观题题库 · GESP 四级 · 2026 真题

GESP 四级 · 2026 真题

四级 · 2026 真题 · 客观题 · 每题 2 分
真题
复刻
试卷编号OBJ-764886
题目总数25 题 · 50 分
试卷类型客观题
考生须知:
① 本卷为客观题单卷,合计 25 题 · 50 分,全部为客观题;
② 试卷右上角设有 「提交答卷」「重置考试」 按钮,提交后系统自动判分并显示答题正确情况,请确认全部作答后再行提交;
③ 试卷不显示答案,提交后方可查看每题作答与正确答案的对照;
④ 答卷进度会保留在本地缓存中,刷新或再次打开仍可继续作答;
⑤ 本卷仅供学生练习使用;请勿用于其他用途;题面有问题请联系:i64coder@163.com。

判 分 报 告

0 / 50 分
0
答 对 · 得 0
0
答 错 · 失 0
当前筛选下没有题目

客 观 题

25 QUESTIONS · 2 POINTS EACH
第 1 题 单选 未作答

执行下面程序后,输出为( )。

01int f(int x = 2){
02    return x * 3;
03}
04
05int main(){
06    cout << f() << " " << f(4);
07}

(2 分)
GESP 四级 2026-03 · 单选 第1题 | 知识点 函数定义与调用、形参与实参、程序阅读与输出推断
第 2 题 单选 未作答

执行下面代码后,输出为( )。

01int main() {
02    int a = 5;
03    int* p = &a;
04    int** q = &p;
05    **q += 7;
06    cout << a << " " << *p;
07}

(2 分)
GESP 四级 2026-03 · 单选 第2题 | 知识点 指针、程序阅读与输出推断
第 3 题 单选 未作答

已知:

01int a[3][4] = {
02    {1,2,3,4},
03    {5,6,7,8},
04    {9,10,11,12}
05};
06int (*p)[4] = a;

则表达式 *(*(p + 2) + 1) 的值为( )。

(2 分)
GESP 四级 2026-03 · 单选 第3题 | 知识点 二维数组、指针、程序阅读与输出推断
第 4 题 单选 未作答

执行下面程序后,输出为( )。

01void fun(int a, int &b, int *c){
02    a += 1;
03    b += 2;
04    *c += 3;
05}
06
07int main(){
08    int x = 1, y = 1, z = 1;
09    fun(x, y, &z);
10    cout << x << " " << y << " " << z;
11}

(2 分)
GESP 四级 2026-03 · 单选 第4题 | 知识点 值传递与引用传递、指针、程序阅读与输出推断
第 5 题 单选 未作答

执行下面程序后输出为( )。

01int x = 3;
02void f(int& x){
03    x += 2;
04}
05int main(){
06    int x = 10;
07    f(x);
08    cout << x << " " << ::x;
09}

(2 分)
GESP 四级 2026-03 · 单选 第5题 | 知识点 作用域、引用、程序阅读与输出推断
第 6 题 单选 未作答

下列关于结构体初始化的写法,正确的是( )。

(2 分)
GESP 四级 2026-03 · 单选 第6题 | 知识点 结构体、常量与变量
第 7 题 单选 未作答

执行下面代码后输出为( )。

01struct S { int a; int b; };
02
03void g(S s){ s.a += 10; }
04void h(S& s){ s.b += 10; }
05
06int main(){
07    S s{1,2};
08    g(s);
09    h(s);
10    cout << s.a << " " << s.b;
11}

(2 分)
GESP 四级 2026-03 · 单选 第7题 | 知识点 结构体、值传递与引用传递、程序阅读与输出推断
第 8 题 单选 未作答

关于递推算法的描述,正确的是( )。

(2 分)
GESP 四级 2026-03 · 单选 第8题 | 知识点 递推、递推计数
第 9 题 单选 未作答

执行 climb(6) 的返回值为( )。

01int climb(int n){
02    if(n <= 2) return n;
03    int a = 1, b = 2, c = 0;
04    for(int i = 3; i <= n; i++){
05        c = a + b;
06        a = b;
07        b = c;
08    }
09    return c;
10}

(2 分)
GESP 四级 2026-03 · 单选 第9题 | 知识点 递推、程序阅读与输出推断
第 10 题 单选 未作答

某排序算法对如下数据排序(按 score 升序),则下面关于该排序算法稳定性的描述中,说法正确的是( )。

初始:(90,'A'), (90,'B'), (80,'C'), (90,'D')

排序后:(80,'C'), (90,'A'), (90,'B'), (90,'D')

(2 分)
GESP 四级 2026-03 · 单选 第10题 | 知识点 排序稳定性、排序复杂度
第 11 题 单选 未作答

下面代码试图把数组按升序进行“插入排序”,横线处应填写( )。

01void ins(int a[], int n){
02    for(int i = 1; i < n; i++){
03        int key = a[i];
04        int j = i-1;
05        while(j >= 0 && ____________){
06            a[j+1] = a[j];
07            j--;
08        }
09        a[j+1] = key;
10    }
11}

(2 分)
GESP 四级 2026-03 · 单选 第11题 | 知识点 插入排序、程序补全、while循环
第 12 题 单选 未作答

下列代码段的时间复杂度为( )。

01int cnt=0;
02for(int i=0; i<n; i++){
03    for(int j=0; j<n; j++){
04        if( (i+j) % 3 == 0) cnt++;
05    }
06}

(2 分)
GESP 四级 2026-03 · 单选 第12题 | 知识点 时间复杂度、嵌套循环
第 13 题 单选 未作答

下面哪种方式不能实现将字符串 Welcome to 2026! 输出重定向到文件 log.txt( )。

(2 分)
GESP 四级 2026-03 · 单选 第13题 | 知识点 文件读写、cin与cout
第 14 题 单选 未作答

执行下面程序,输出结果是( )。

01int divi(int a,int b){
02    if(b==0) throw 0;
03    return a/b;
04}
05
06int main(){
07    try{
08        cout << divi(10,0);
09    }catch(const char* msg){
10        cout << "A";
11    }catch(int){
12        cout << "B";
13    }
14}

(2 分)
GESP 四级 2026-03 · 单选 第14题 | 知识点 异常处理、程序阅读与输出推断
第 15 题 单选 未作答

下列函数实现排行榜中单个元素的位置调整(类似插入排序的相邻搬移)。当某玩家分数增加,需将其向前移动时,while 循环的条件应为( )。

01struct Player{ int score; };
02void up(Player players[], int n, int idx){
03    Player cur = players[idx];
04    int i = idx;
05    while( ____________ ){
06        players[i] = players[i-1];
07        i--;
08    }
09    players[i] = cur;
10}

(2 分)
GESP 四级 2026-03 · 单选 第15题 | 知识点 插入排序、程序补全、while循环
第 16 题 判断 未作答

下面代码执行结束时,变量 a 的值变成 1515

01void add10(int &x) { x += 10; }
02
03int main() {
04    int a = 5;
05    add10(a);
06}

(2 分)
GESP 四级 2026-03 · 判断 第1题 | 知识点 值传递与引用传递、引用、程序阅读与输出推断
第 17 题 判断 未作答

引用一旦绑定某个变量,就不能再绑定其他变量。( )

(2 分)
GESP 四级 2026-03 · 判断 第2题 | 知识点 引用、常量与变量
第 18 题 判断 未作答

执行下面代码,输出结果为 5

01int main() {
02    int a[2][3];
03    cout << &a[1][2] - &a[0][1] << endl;
04    return 0;
05}

(2 分)
GESP 四级 2026-03 · 判断 第3题 | 知识点 二维数组、指针
第 19 题 判断 未作答

下面程序可以正常编译并输出 10

01int calc(int x, int y = 10);
02int calc(int x) { return x * 2; }
03int calc(int x, int y) { return x * y; }
04
05int main() {
06    cout << calc(5);
07}

(2 分)
GESP 四级 2026-03 · 判断 第4题 | 知识点 函数定义与调用、形参与实参
第 20 题 判断 未作答

下面程序执行后输出 2010

01int x = 10;
02void f() { int x = 20; cout << x; }
03
04int main() {
05    f();
06    cout << x;
07}

(2 分)
GESP 四级 2026-03 · 判断 第5题 | 知识点 作用域、程序阅读与输出推断
第 21 题 判断 未作答

在 C++ 中,如果声明了一个指针变量但没有显式初始化,该指针会自动被初始化为 nullptr

(2 分)
GESP 四级 2026-03 · 判断 第6题 | 知识点 指针、常量与变量
第 22 题 判断 未作答

下面代码没有语法错误。

01struct GameCharacter {
02    string name;
03    int level;
04    float position_x;
05    float position_y;
06
07    struct Equipment {
08        string weapon;
09        int attack_bonus;
10        int defense_bonus;
11    } equipment;
12
13    struct Skill {
14        string name;
15        int damage;
16    } skills[8];
17    int skill_count;
18};

(2 分)
GESP 四级 2026-03 · 判断 第7题 | 知识点 结构体、类与对象
第 23 题 判断 未作答

下面程序能够把 Hello 写入 data.txt 文件中。

ofstream fout("data.txt");
cout << "Hello";
fout.close();

(2 分)
GESP 四级 2026-03 · 判断 第8题 | 知识点 文件读写、cin与cout
第 24 题 判断 未作答

由于选择排序和插入排序的时间复杂度均为 O(n2)O(n^2),在任何实际场景下两者的性能表现几乎相同,可以互相替代。

(2 分)
GESP 四级 2026-03 · 判断 第9题 | 知识点 选择排序、插入排序、排序复杂度
第 25 题 判断 未作答

下面用递推方式计算斐波那契数列第 nn 项的程序,时间复杂度是 O(2n)O(2^n)

01int fib(int n) {
02    if (n <= 1) return n;
03    int f0 = 0, f1 = 1, cur = 0;
04    for (int i = 2; i <= n; i++) {
05        cur = f0 + f1;
06        f0 = f1;
07        f1 = cur;
08    }
09    return cur;
10}

(2 分)
GESP 四级 2026-03 · 判断 第10题 | 知识点 递推、时间复杂度、程序阅读与输出推断