#80. [GESP202309 四级] 客观题

[GESP202309 四级] 客观题

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

第1题. ⼈们所使⽤的⼿机上安装的App通常指的是( )。

{{ select(1) }}

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

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

{{ select(2) }}

  • 9
  • 7
  • 5
  • 11

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

{{ select(3) }}

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

第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++语⾔程序后,输出结果是( )。

#include<iostream>
using namespace std;
int main(){
	int fib[10];
	fib[0]=0;
	fib[1]=1;
	for(int i=2;i<10;i++)
		fib[i]=fib[i-1]+fib[i-2];
	cout<<fib[10]<<endl;
	return 0;
}

{{ select(14) }}

  • 0
  • 5
  • 55
  • 无法确定

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

void BubbleSort(int array[], int n){
	for(int i=n;i>=2;i--)
		for(________)  //在此处填入代码 
			if(array[j]>array[j+1]){
				int t=array[j];
				array[j]=array[j+1];
				array[j+1]=t;
			}
}

{{ 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题. 对 个元素的数组执⾏插⼊排序算法,通常的时间复杂度是O(N2)。( ) {{ 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) }}

  • ×