⼀、选择题
1.已知⼀棵⼆叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该⼆叉树的后序遍历为( )
A.GEDHFBCA
B.DGEBHFCA
C.ABCDEFGH
D.ACBFEDHG
【参考答案】 B
2.如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是( )
A.e3,e1,e4,e2
B.e2,e4,e3,e1
C.e3,e4,e1,e2
D.任意顺序
【参考答案】 B
3.程序设计语⾔的基本成分是数据成分、运算成分、控制成分和( )
A.对象成分
B.变量成分
C.语句成分
D.传输成分
【参考答案】 D
4.下列不属于软件⼯程的3个要素的是( )
A.⼯具
B.过程
C.⽅法
D.环境
【参考答案】 D
5.将E-R图转换到关系模式时,实体与联系都可以表⽰成( )
A.属性
B.关系
C.键
D.域
【参考答案】 B
6.在深度为5的满⼆叉树中,叶⼦结点的个数为( )
A.32
运算符优先级按从高到低排列
B.31
C.16
D.15
【参考答案】 B
7.⼀些重要的程序语⾔(如C语⾔和Pascal语⾔)允许过程的递归调⽤。⽽实现递归调⽤中的存储分配通常⽤( )
A.栈
B.堆
C.数组
D.链表
【参考答案】 A
8.开发软件时对提⾼开发⼈员⼯作效率⾄关重要的是( )
A.操作系统的资源管理功能
B.先进的软件开发⼯具和环境
C.程序⼈员的数量
D.计算机的并⾏处理能⼒
【参考答案】 B
9.数据处理的最⼩单位是( )
A.数据
B.数据元素
C.数据项
D.数据结构
【参考答案】 C
10.下述关于数据库系统的叙述中正确的是( )
A.数据库系统减少了数据冗余
B.数据库系统避免了⼀切冗余
C.数据库系统中数据的⼀致性是指数据类型⼀致
D.数据库系统⽐⽂件系统能管理更多的数据
11.以下各选项组中,均是C++语⾔关键字的组是( )
A.public operator this
B.shod string static
C.it while>=
D.private cout printf
【参考答案】 A
12.下列描述正确的是( )
A.表⽰m>n为true或mn&&m
B.switch语句结构中必须有default语句
C.if语句结构中必须有else语句
D.如果⾄少有⼀个操作数为true,则包含“||”运算符的表达式为true 【参考答案】 D
13.下⾯关于break语句的描述中,不正确的是( )
A.break可以⽤于循环体内
B.break语句可以在for循环语句中出现多次
C.break语句可以在switch语句中出现多次
D.break语句可⽤于if条件判断语句内
【参考答案】 D
14.下⾯程序错误的是( )
① #include
② void main()
③ {
④ int *p=new int[1];
⑤ p=9;
⑥ cout<
⑦ delete[]p;
⑧ }
A.④
B.⑤
C.⑥
D.⑦
【参考答案】 B
15.不能作为重载函数的调⽤的依据是( )
A.参数个数
B.参数类型
C.函数类型
D.函数名称
【参考答案】 D
16.在C++语⾔中,数据封装要解决的问题是( )
A.数据的规范化
B.便于数据转换
C.避免数据丢失
D.防⽌不同模块之间数据的⾮法访问
【参考答案】 D
17.类的构造函数和析构函数描述正确的是()
A.构造函数可以重载,析构函数不能重载
B.构造函数不能重载,析构函数可以重载
C.构造函数可以重载,析构函数也可以重载
D.构造函数不能重载,析构函数也不能重载
【参考答案】 A
18.对静态数据成员的描述中,正确的是( )
A.静态数据成员是类的所有对象共享的数据
B.类的每个对象都有⾃⼰的静态数据成员
C.类的不同对象有不同的静态数据成员值
D.静态数据成员不能通过类的对象调⽤
【参考答案】 A
19.可以⽤p.a的形式访问派⽣类对象p的基类成员a,其中a是( )
A.私有继承的公有成员
B.公有继承的私有成员
C.公有继承的保护成员
D.公有继承的公有成员
【参考答案】 D
20.下⾯关于虚函数的描述,错误的是( )
A.在成员函数声明的前⾯加上virtual修饰,就可把该函数声明为虚函数
B.基类中说明了虚函数后,派⽣类中对应的函数也必须说明为虚函数
C.虚函数可以是另⼀个类的友元函数,但不能是静态成员函数
D.基类中说明的纯虚函数在其任何派⽣类中都必须实现
【参考答案】 B
21.语句ofstream f(″SALARY.DAT″,
ios::app|ios::binary);的功能是建⽴流对象f,试图打开⽂件SALARY.DAT并与之连接,且( )
A.若⽂件存在,将⽂件写指针定位于⽂件尾;若⽂件不存在,建⽴⼀个新⽂件
B.若⽂件存在,将其置为空⽂件;若⽂件不存在,开失败
C.若⽂件存在,将⽂件写指针定位于⽂件⾸;若⽂件不存在,建⽴⼀个新⽂件
D.若⽂件存在,开失败;若⽂件不存在,建⽴⼀个新⽂件
【参考答案】 A
22.下⾯程序的运⾏结果是( )
#include
void fun(int *a,int *b)
{int x=*a;
*a=*b;*b=x;
cout<
void main()
{int x=1,y=2;
fun(&x,&y);
cout<
A.12 12
B.12 21
C.21 12
D.21 21
【参考答案】 D
23.以下哪个特征不是⾯向对象思想中的主要特征?( )
A.多态
B.继承
C.封装
D.垃圾回收
【参考答案】 D
24.C++中运算符优先级由⾼到低排列正确的是( )
A.:: ++ +||
B.< * ||,
C.sizeof % + ::
D., && new sizeof
【参考答案】 A
25.以下for语句中不是死循环的是( )
A.for(int i=0;i<1;++i);
B.for(int i=0;;++i);
C.for(int i=1;i>0;++i);
D.for(;;); 【参考答案】 A
26.以下定义数组中错误的是( )
A.int a[10];
B.int a[2][20];
C.int a[20][];
D.int a[];
【参考答案】 C
27.下⾯程序错误的语句是( )
#include ″iostrteam.h″
① void main()
② {
③ int A=0;
④ int & B;
⑤ B=A;
⑥ cout<
⑦ cout<
⑧ }
A.②
B.③
C.④
D.⑥
【参考答案】 C
28.函数int test(int a,int b=1,int c=0),下列调⽤不合法的个数是( )
test(0); test(0,0); test(); test(0,0,0);
A.0
B.1
C.2
D.3
【参考答案】 C
29.C++语⾔中关于构造函数的说法正确的是( )
A.构造函数的函数名不必和类名相同
B.构造函数只能每⼀个
C.每个类必定有构造函数
D.构造函数必有返回值
【参考答案】 C
30.下⾯程序的执⾏结果为( )
#include ″iostream″
using namespace std;
class A
{
int a;
public:
void Seta(int x){a=x;}
void Display_a(){cout<
};
class B
{
int b;
public:
void Setb(int x){b=x;}
void Dispaly_b(){cout<
};
class C:public A,private B
{private:
int c;
public:
void Setc(int x,int y,int z)
{ c=z;Seta(x);Setb(y);}
void Display_c(){cout<
① void main()
② {
③ C cc;
④ cc.Seta(1);
⑤ cc.Display_a();
⑥ cc.Setc(2,2,3);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论