#GESP202309C4T1. GESP-2023年9月认证C++四级真题-T1-客观题部分

GESP-2023年9月认证C++四级真题-T1-客观题部分

image

GESP-2023年9月认证C++四级真题-T1-客观题部分 (满分:100 分 考试时间:120 分钟)

一、单选题(每题 2 分,共 30 分)

第 1 题 人们所使用的手机上安装的App通常指的是( )。

{{ select(1) }}

  • 一款操作系统
  • 一款应用软件
  • 一种通话设备
  • 以上都不对

第 2 题 下列流程图的输出结果是?( )

image

{{ select(2) }}

  • 9
  • 7
  • 5
  • 11

第 3 题 对包含 n 个元素的数组进行冒泡排序,平均时间复杂度一般为( )。

{{ select(3) }}

  • O(n)O(n)
  • O(nlogn)O(nlogn)
  • O(n2)O(n^2)
  • 以上都不正确

第 4 题 下列关于C++语言中指针的叙述,不正确的是( )。

{{ select(4) }}

  • 可以定义指向 int 类型的指针。
  • 可以定义指向自定义结构体类型的指针。
  • 自定义结构体类型可以包含指针类型的元素。
  • 不能定义指向void类型的指针,那没有意义。

第 5 题 下列关于C++语言中数组的叙述,不正确的是( )。

{{ select(5) }}

  • 一维数组可以用来表示数列。
  • 二维数组可以用来表示矩阵。
  • 三维数组可以用来表示空间中物体的形状。
  • 世界是三维的,所以定义四维数组没有意义。

第 6 题 下列关于C++语言中函数的叙述,正确的是( )。

{{ select(6) }}

  • 函数调用前必须定义。
  • 函数调用时必须提供足够的实际参数。
  • 函数定义前必须声明。
  • 函数声明只能写在函数调用前。

第 7 题 下列关于C++语言中函数的叙述,不正确的是( )。

{{ select(7) }}

  • 两个函数的声明可以相同。
  • 两个函数的局部变量可以重名。
  • 两个函数的参数可以重名。
  • 两个函数可以重名。

第 8 题 一个二维数组定义为 char array[3][10]; ,则这个二维数组占用内存的大小为( )字节。

{{ select(8) }}

  • 10
  • 30
  • 32
  • 48

第 9 题 如果 n 为 int 类型的变量,一个指针变量定义为 int *p = &n; ,则下列说法正确的是( )。

{{ select(9) }}

  • 指针变量 p 的值与变量 n 是相同的。
  • 指针变量 p 的值与变量 n 的地址是相同的。
  • 指针变量 p 指向的值为 'n' 。
  • 指针变量 p 指向的值与变量 n 的地址是相同的。

第 10 题 一个三维数组定义为 long long array[6][6][6]; ,则 array[1][2][3] 和 array[3][2][1] 在内存中的位置相差多少字节?( )

{{ select(10) }}

  • 70字节
  • 198字节
  • 560字节
  • 无法确定

第 11 题 如果 a 为 int 类型的变量,且 a 的值为6,则执行 a = ~a; 之后, a 的值会是( )。

{{ select(11) }}

  • -6
  • 6
  • -7
  • 7

第 12 题 一个数组定义为 int a[5] = {1, 2, 3, 4, 5}; ,一个指针定义为 int * p = &a[2]; ,则执行 *p = a[1]; 后,数组a中的值会变为( )。

{{ select(12) }}

  • {1, 2, 2, 4, 5}
  • {1, 3, 3, 4, 5}
  • {1, 2, 3, 3, 5}
  • {1, 2, 4, 4, 5}

第 13 题 下列关于C++语言中异常处理的叙述,正确的是( )。

{{ select(13) }}

  • 一个 try 子句可以有多个 catch 子句与之对应。
  • 如果 try 子句在执行时发生异常,就一定会进入某一个 catch 子句执行。
  • 如果 try 子句中没有可能发生异常的语句,会产生编译错误。
  • catch 子句处理异常后,会重新执行与之对应的 try 子句。

第 14 题 执行以下C++语言程序后,输出结果是( )。

image

{{ select(14) }}

  • 0
  • 5
  • 55
  • 无法确定。

第 15 题 在下列代码的横线处填写( ),完成对有 n 个 int 类型元素的数组 array 由小到大排序。

image

{{ select(15) }}

  • int j = 1; j < n; j++

  • int j = 0; j < n; j++

  • int j = 0; j < i - 1; j++

  • int j = 0; j < i; j++

    二、判断题(每题 2 分,共 20 分)

第 16 题 在C++语言中,指针变量在逻辑上指向另一个变量在内存中的位置,指针变量本身不占用内存。

{{ select(16) }}

第 17 题 对nn 个元素的数组执行插入排序算法,通常的时间复杂度是O(n2)O(n^2)

{{ select(17) }}

第 18 题 在C++语言中,每个变量都有其作用域。

{{ select(18) }}

第 19 题 在C++语言中,在函数调用时,通过引用传递的参数不会复制实际参数,因此不会额外占用内存。

{{ select(19) }}

第 20 题 在C++语言中,可以通过定义结构体,定义一个新的数据类型。

{{ select(20) }}

第 21 题 在C++语言中,可以定义结构体类型的数组变量,定义结构体时也可以包含数组成员。

{{ select(21) }}

第 22 题 如果希望记录10个最长为99字节的字符串,可以将字符串数组定义为 char s[10][100]; 。

{{ select(22) }}

第 23 题 一个可能抛出异常的函数,调用它的位置没有在 try 子句中,会引起编译错误。

{{ select(23) }}

第 24 题 == 和 := 都是C++语言的运算符。

{{ select(24) }}

第 25 题 通过使用文件重定向操作,可以将程序中输出到 cout 的内容输出到文件中,这是常用的记录程序运行日志的方法之一。

{{ select(25) }}

三、编程题(每题 25 分,共 50 分)

3.1 编程题 1

试题名称:进制转换

题目详情 - GESP-2023年9月认证C++四级真题-T2-编程题1:进制转换 - BCOI

3.2 编程题 2

试题名称:变长编码

题目详情 - GESP-2023年9月认证C++四级真题-T3-编程题2:变长编码 - BCOI