题号123456789101112131415
答案DCCBBBACABBDCBC
C++ 六级
2024 年 12 月
1单选题(每题 2 分,共 30 分)
第 1 题 面向对象编程(OOP)是一种特殊的程序设计方法。下面( )不是重要的OOP特性。
A. 抽象
B. 封装
C. 继承
D. 模块化
第 2 题 以下关于C++中类的说法,哪一项是正确的?
A. 类中定义的所有成员变量和成员函数默认是public访问权限。
B. 类的构造函数必须显式声明返回类型为void。
C. 在C++中,类的数据一般设置为私有,其公有成员函数提供访问私有数据的唯一途径。
D. 同一个类的实例有各自的成员数据和成员函数。
第 3 题 以下C++代码段中存在语法错误或逻辑错误,( )是正确的。
A. NULL 在C++中无法用于指针初始化,应使用 nullptr。
#include <iostream>
using namespace std;
class MyClass {
public:
MyClass() {
cout << "Constructor called!" << endl;
}
void display() {
cout << "Display function called!" << endl;
}
};
int main() {
MyClass* obj = NULL;
obj->display();
return 0;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
B. obj 的定义应该是 MyClass obj; 而不是指针类型。
C. obj->display() 语句存在空指针访问错误,obj 应该初始化为一个有效的对象。
D. obj->display() 语句会调用 display() 函数,但它没有输出任何内容。
第 4 题 阅读以下代码,下面哪一项是正确的?
A. 栈s的输出顺序是 1 2 3 4 5,队列q的输出顺序是 5 4 3 2 1。
B. 栈s的输出顺序是 5 4 3 2 1,队列q的输出顺序是 1 2 3 4 5。
C. 栈s的输出顺序是 1 2 3 4 5,队列q的输出顺序是 1 2 3 4 5。
D. 栈s的输出顺序是 1 2 3 4 5,队列q的输出顺序是 1 2 3 4 5,程序不会正常执行。
第 5 题 个节点的双向循环链,在其中查找某个节点的平均时间复杂度是( )。
A.
B.
C.
D.
第 6 题 以下关于树的说法,( )是正确的。
A. A. 在一棵二叉树中,叶子结点的度一定是2。
B. B. 满二叉树中每一层的结点数等于 。
层 数
C. C. 在一棵树中,所有结点的度之和等于所有叶子结点的度之和。
D. D. 一棵二叉树的先序遍历结果和中序遍历结果一定相同。
第 7 题 已知字符集 {A, B, C, D} 的出现频率如下表所示:
void processData() {
stack<int> s;
queue<int> q;
for (int i = 1; i <= 5; ++i) {
s.push(i);
q.push(i);
}
while (!s.empty()) {
cou
GESP 2024年12月认证 C++ 6级真题