#1053. GESP C++ 四 级 2024年9月真题 · 单选题

GESP C++ 四 级 2024年9月真题 · 单选题

GESP C++ 四 级 2024年9月真题(120 分钟,总分 100 分)

单选题(共 15 题,每题 2 分,共 30 分)

1. 在 C++ 中,( )正确定义了⼀个返回整数值并接受两个整数参数的函数。

{{ select(1) }}

  • int add(int a, int b) { return a + b; }
  • void add(int a, int b) { return a + b; }
  • int add(a, b) { return a + b; }
  • void add(int a, int b) { return a - b; }

2. 在C++中,形参与实参的关系描述正确的是( )。

{{ select(2) }}

  • 形参在函数调⽤时指定,实参在函数定义时传递
  • 形参在函数定义时指定,实参在函数调⽤时传递
  • 形参和实参可以互换
  • 形参和实参必须是完全相同的类型,不能有任何差异。

3. 运⾏以下代码,屏幕上将输出( )。

{{ select(3) }}

  • 100 200 100 200
  • 100 200 100 300
  • 100 200 200 200
  • 100 200 200 300

4. 运⾏下⾯代码,屏幕上输出是( )。

{{ select(4) }}

  • 24
  • 9
  • 7
  • 不确定

5. 运⾏下⾯代码⽚段的结果是( )。

{{ select(5) }}

  • 将x赋值为24
  • 将y赋值为20
  • 将q指向x的地址
  • 将p指向y的地址

6. 在 C++ 中,( )正确定义⼀个名为 student 的结构体,其中包含⼀个 name 字符数组和⼀个 age 整数?

{{ select(6) }}

  • struct student { char name[20]; int age; };
  • student struct { char name[20]; int age; };
  • student struct { string name; int age; };
  • struct student { char[20] name; int age; };

7. 在 C++ 中,( )正确声明了⼀个 3 ⾏ 4 列的⼆维数组。

{{ select(7) }}

  • int arr[3, 4];
  • int arr[3][4];
  • int arr[4][3];
  • int arr(3, 4);

8. ⼀个⼆维数组定义为 int arr[3][4]; (假设⼀个int变量占4个字节),则 int arr[0] 占⽤( )个字节的内存。

{{ select(8) }}

  • 3
  • 4
  • 12
  • 16

9. 下⾯代码采⽤递推算法来实现整数 的阶乘(n! = n x (n-1) x ... x 2 x 1),则横线上应填写( )。

{{ select(9) }}

  • result *= i;
  • result += i;
  • result *= result;
  • result += result;

10. 在排序算法中,稳定性指的是( )。

{{ select(10) }}

  • 排序后数据不会丢失
  • 排序后相同元素的相对顺序保持不变
  • 排序后数据不会被修改
  • 排序后数据的时间复杂度不变

11. 下⾯代码实现了冒泡排序函数,则横线上应填写( )。

{{ select(11) }}

  • for (int j = 0; j < arr.size() - 1; j++)
  • for (int j = arr.size() - 1; j > 0; j--)
  • for (int j = 0; j < i; j++)
  • for (int j = i-1; j <=0; j--)

12. 上⼀题算法的时间复杂度为( )。

{{ select(12) }}

  • O(n2)
  • O(2n)
  • O(1)
  • O(n)

13. 下⾯代码实现了插⼊排序函数(升序),则横线上应填写( )。

{{ select(13) }}

  • while (j >= 0 && nums[j] > base)
  • while (j > 0 && nums[j] > base)
  • while (j >= 0 && nums[j] < base)
  • while (j > 0 && nums[j] < base)

14. ⼩杨⽤⽂件重定向实现在 log.txt ⽂件中输出⽇志,则下⾯横线上应填写( )。

{{ select(14) }}

  • cout << "This output will go to the log file." << endl;
  • log_file << "This output will go to the log file." << endl;
  • cout >> "This output will go to the log file." >> endl;
  • log_file >> "This output will go to the log file." >> endl;

15. 运⾏下⾯的代码,屏幕上将输出( )。

{{ select(15) }}

  • division by zero error result: caught an exception:
  • result: caught an exception: division by zero error
  • caught an exception: division by zero error
  • division by zero error caught an exception: division by zero error