总结

1:以下哪种功能没有涉及 C++ 语言的面向对象特性支持:( )。

A. C++ 中调用 printf 函数

B. C++ 中调用用户定义的类成员函数

C. C++ 中构造一个 class或struct

D. C++ 中构造来源于同一基类的多个派生类

解析:面向对象可以翻译为class(类)

2:运行以下代码片段的行为是( )。

int x = 101;
int y = 201;
int *p = &x;
int *q = &y;
p = q;

A. 将xx的值赋为201

B. 将yy的值赋为101

C. 将qq指向xx的地址

D. 将pp指向yy的地址

解析:p和y都是指针变量,存的是地址。排除A,B选项。然后只有p=q然后q=&y所以:p=&y

3:对假设栈SS和队列QQ的初始状态为空。存在e1e6e1∼e6六个互不相同的数据,每个数据按照进栈SS、出栈SS、进队列QQ、出队列QQ的顺序操作,不同数据间的操作可能会交错。已知栈SS中依次有数据e1e2e3e4​、e5e1、e2、e3、e4​、e5e6e6进栈,队列 Q依次有数据e2e4​、e3e6e5e2、e4​、e3、e6、e5e1e1出队列。则栈 S的容量至少是( )个数据。

A. 2

B. 3

C. 4

D. 6

解析:用一个栈来模拟,因为队列的入队和出队是一样的,所以只用一个栈来模拟就行了

入 出

e1

e1 e2

e1 e2

e1 e3 e2

e1 e3 e4 e2

e1 e3 e4 e2

e1 e3 e2 e4

e1 e2 e4 e3

e1 e5 e2 e4 e3

e1 e5 e6 e2 e4 e3

e1 e5 e2 e4 e3 e6

e1 e2 e4 e3 e6 e5

结果:e2 e4 e3 e6 e5 e1