题号123456789101112131415
答案DBCDAACAACDBBAB
C++ 八级
2024 年 09 月
1单选题(每题 2 分,共 30 分)
第 1 题 下面关于C++类和对象的说法,错误的是( )。
A. 类的析构函数可以为虚函数。
B. 类的构造函数不可以为虚函数。
C. class中成员的默认访问权限为private。
D. struct中成员的默认访问权限为private。
第 2 题 对于一个具有个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小为( )。
A.
B.
C.
D.
第 3 题 设有编号为A、B、C、D、E的5个球和编号为A、B、C、D、E的5个盒子。现将这5个球投入5个盒子,要求
每个盒子放一个球,并且恰好有两个球的编号与盒子编号相同,问有多少种不同的方法?( )。
A. 5
B. 120
C. 20
D. 60
第 4 题 从甲地到乙地,可以乘高铁,也可以乘汽车,还可以乘轮船。一天中,高铁有10班,汽车有5班,轮船有2
班。那么一天中乘坐这些交通工具从甲地到乙地共有多少种不同的走法?( )。
A. 100
B. 60
C. 30
D. 17
第 5 题 个结点的二叉树,执行释放全部结点操作的时间复杂度是( )。
A.
B.
C.
D.
第 6 题 在一个单位圆上,随机分布个点,求这个点能被一个单位半圆周全部覆盖的概率( )。
A.
B.
C.
D.
第 7 题 下面pailie函数是一个实现排列的程序,横线处可以填入的是( )。
A.
B.
C.
#include <iostream>
using namespace std;
int sum = 0;
void swap(int & a, int & b) {
int temp = a;
a = b;
b = temp;
}
void pailie(int begin, int end, int a[]) {
if (begin == end) {
for (int i = 0; i < end; i++)
cout << a[i];
cout << endl;
}
for (int i = begin; i < end; i++) {
__________ // 在此处填入选项
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
swap(a[begin + 1], a[i]);
pailie(begin + 1, end, a);
swap(a[i], a[begin]);
1
2
3
swap(a[begin], a[i]);
pailie(begin, end, a);
swap(a[i], a[begin]);
1
2
3
D.
第 8 题 上一题中,如果主函数为如下的程序,则最后的排列数是多少个?( )。
A. 120
B. 60
C. 240
D. 180
第 9 题 下列程序实现了输出杨辉三角形,代码中横线部分应该填入的是( )。
A. a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
B. a[i][j] = a[i][j - 1] + a[i - 1][j];
C. a[i][j] = a[i - 1][j] + a[i - 1][j];
swap(a[begin], a[i]);
pailie(begin + 1, end
GESP 9月认证 C++ 八级真题,2024年9月GESP认证C++编程八级真题及答案