1、【
单选题
】
有如下程序:
#inClude using namespaCe std; Class B{
publiC:
virtual void show(){Cout<<”B”;} };
Class D:publiC B{ . publiC:
void show(){Cout<<”D”;} };
void funl(B * ptr){ptr一>show();} void fUN2(B&ref){ref.show();}
voidfhIl3(B B.{b.show();} int main()
{
B b,* P=new D; D d;
funl(P); fun2(B.; fun3(D);
delete P; return 0; }
执行这个程序的输出结果是( )。
[1分]
答案:
2、【
单选题
】
下面描述中错误的是( )。
[1分]
、
系统总体结构图支持软件系统的详细设计
、
软件设计是将软件需求转换为软件表示的过程
、
数据结构与数据库设计是软件设计的任务之一
、
PAD图是软件详细设计的表示工具
答案:
3、【
单选题
】
已知函数FA调用函数FB,若要把这两个函数定义在同一个文件中,则( )。
[1分]
、
FA必须定义在FB之前
、
FB必须定义在FA之前
、
若FA定义在FB之后,则FA的原型必须出现在FB的定义之前
、
若FB定义在FA之后,则FB的原型必须出现在FA的定义之前
答案:
4、【
单选题
】
有如下函数定义:
void funC(int a,int&B. {a++;b++;}
若执行代码段:
int x=0,Y = 1; funC(X,Y);
则变量x和y的值分别是( )。
[1分]
答案:
5、【
单选题
】
下面程序的输出结果是( )。
#include
class example
{
int a;
public:
example(int B.{a=b++;}
void print(){a=a+1;eout<<A<<””;}
void print()const{cout<<A<<””;}
};
void main()
{
example x(3);
const example Y(2);
A print();
B print();
}
[1分]
答案:
6、【
单选题
】
下列有关类继承的叙述中,错误的是( )。
[1分]
、
继承可以实现软件复用
、
虚基类可以解决由多继承产生的二义性问题
、
派生类构造函数要负责调用基类的构造函数
、
派生类没有继承基类的私有成员
答案:
7、【
单选题
】
下面程序的运行结果是( )。
#include
int fun(int a[],int n) {
int resuh=1;
for(inl i=1;i<11;1‘++)
result=result * a[i];
retum result;
} void main()
int a[3]={3,4,5}:
cout<<FUN(A,3)<
}
[1分]
答案:
8、【
单选题
】
下列叙述中正确的是( )。
[1分]
、
在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化
、
在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化
、
在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化
、
以上说法都不正确
答案:
9、【
单选题
】
在满足实体完整性约束的条件下( )。
[1分]
、
一个关系中应该有一个或多个候选关键字
、
一个关系中只能有一个候选关键字
、
一个关系中必须有多个候选关键字
、
一个关系中可以没有候选关键字
答案:
10、【
单选题
】
下面关于c+十语言变量的叙述错误的是( )。
[1分]
、
c++语言中变量分为aut0、static、extem和register4种存储类型
、
自动变量和外部变量的作用域为整个程序
、
内部静态变量的作用域是定义它的函数
、
外部静态变量的作用域是定义它的文件
答案:
11、【
单选题
】
下面程序的运行结果是( )。
#include void main()
{
int num=1:
int&ref=num; ref=ref+2:
cout<
}
[1分]
答案:
12、【
单选题
】
有以下程序:
#include float tun(int X,int Y) {return(X+Y);} void main()
{int a=2,b=5,c=8;
cout<
程序运行后的输出结果是( )。
[1分]
答案:
13、【
单选题
】
下列运算符中,不能被重载的是( )。
[1分]
答案:
14、【
单选题
】
算法的空间复杂度是指( )。
[1分]
、
算法在执行过程中所需要的计算机存储空间
、
算法所处理的数据量
、
算法程序中的语句或指令条数
、
算法在执行过程中所需要的临时工作单元数
答案:
15、【
单选题
】
c++语言类体系中,不能被派生类继承的有( )。
[1分]
、
转换函数
、
构造函数
、
虚函数
、
静态成员函数
答案:
16、【
单选题
】
对C++编译器区分重载函数无任何意义的信息是( )。
[1分]
、
参数类型
、
参数个数
、
返回值类型
、
常成员函数关键字Const
答案:
17、【
单选题
】
对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是( )。
[1分]
、
公有类型
、
私有类型
、
保护类型
、
友元类型
答案:
18、【
单选题
】
下列程序的运行结果为( )。
#include int i=0;
class A{ public: A(){i++;}
};
void main() {
A a,b[3],*C; C=b;
cout<<I<
}
[1分]
答案:
19、【
单选题
】
以下关键字不能用来声明类的访问权限的是( )。
[1分]
、
publiC
、
statiC
、
proteCted
、
private
答案:
20、【
单选题
】
设有定义int a=1;float f=1.2;char C='a';,则下列表示错误的是( )。
[1分]
、
++a;
、
f一一;
、
c++;
、
8++;
答案:
21、【
单选题
】
下列不是描述类的成员函数的是( )。
[1分]
、
构造函数
、
析构函数
、
友元函数
、
复制构造函数
答案:
22、【
单选题
】
有如下程序:
int x=3:
do{
x-=2;
COU[<
}while(!(--X));
执行这个程序的输出结果是( )。
[1分]
答案:
23、【
单选题
】
下列选项中属于面向对象设计方法主要特征的是( )。
[1分]
、
继承,
、
自顶向下
、
模块化
、
逐步求精
答案:
24、【
单选题
】
对于类定义 class A{
public:
void func2(){}
};
class B:public A{ public:
w)id funcl()| cout<<"class B func l”<<ENDL:}
virtual voiIl fimc2(){cout<<"class B func 2" <<ENDL:}
};
下面正确的叙述是( )。
[1分]
、
A::rune2()和B::funcl()都是虚函数
、
A::func2()和B::funel()都不是虚函数
、
B::funcl()是虚函数,而A::func2()不是虚函数
、
B::funcl()不是虚函数,而A::func2()是虚函数
答案:
25、【
单选题
】
语句ofstream f(”SALARY.DAT”,ios::app|ios::binary);的功能是建立流对象f,试图打开文件SALA-RY.DAT并与之连接,并且( )。
[1分]
、
若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件
、
若文件存在,将其置为空文件;若文件不存在,打开失败
、
若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件
、
若文件存在,打开失败;若文件不存在,建立一个新文件
答案:
26、【
单选题
】
下列有关继承和派生的叙述中,正确的是( )。
[1分]
、
如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员
、
派生类的成员函数可以访问基类的所有成员
、
基类对象可以赋值给派生类对象
、
如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类
答案:
27、【
单选题
】
下列符号中可以用做C++标识符的是( )。
[1分]
、
_radius
、
f00~bar
、
else
、
3room
答案:
28、【
单选题
】
有如下程序:
#include
using namespace std;
classBase{
public:
void fun(){
__________________
cout<<”Base::fun”<<ENDL;}
};
class Derived:public Base{
public:
voidfun(){
cout<<”Derived::fun”<
}
};
int main(){
Derived d;
A fun();
return 0;
}
已知其执行后的输出结果为:
Base::fun
Derived::fun
则程序中下画线处应填入的语句是( )。
[1分]
、
Base.fun();
、
Base::fun();
、
Base—>fun();
、
fun();
答案:
29、【
单选题
】
以下各选项组中,均是C++语言关键字的组是( )。
[1分]
、
public operator this
、
shod string static
、
it while>=
、
prirate cout printf
答案:
30、【
单选题
】
要想使23.78965421的输出为23.7887,应用的语句是( )。
[1分]
、
cout<<23.78965421;
、
cout<<FIXED<<23.78965421;
、
cout<<23.78965421—0.001;
、
cout<<FIXED<
答案:
31、【
单选题
】
在软件开发中,需求分析阶段产生的主要文档是( )。
[1分]
、
软件集成测试计划
、
软件详细设计说明书
、
用户手册
、
软件需求规格说明书
答案:
32、【
单选题
】
下列关于类定义的说法中,正确的是( )。
[1分]
、
类定义中包括数据成员和函数成员的声明
、
类成员的缺省访问权限是保护的
、
数据成员必须被声明为私有的
、
成员函数只能在类体外进行定义
答案:
33、【
单选题
】
下列关于数据库设计的叙述中,正确的是( )。
[1分]
、
在需求分析阶段建立数据字典
、
在概念设计阶段建立数据字典
、
在逻辑设计阶段建立数据字典
、
在物理设计阶段建立数据字典
答案:
34、【
单选题
】
下列选项,不正确的是( )。
[1分]
、
for(int a=1;a<=10;a++);
、
int a=1;
do
{
a++:
}while(a<=10);
、
int a=1;
while(a<=10)
{
a++:
}
、
for(int a=1;a<=10;a++)a++;
答案:
35、【
单选题
】
下列关于栈叙述正确的是( )。
[1分]
、
栈顶元素最先能被删除
、
栈顶元素最后才能被删除
、
栈底元素永远不能被删除
、
栈底元素最先被删除
答案:
36、【
单选题
】
下列关于运算符重载的描述中,正确的是( )。
[1分]
、
运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符
、
一元运算符只能作为成员函数重载
、
二元运算符重载为非成员函数时,参数表中有一个参数
、
c++中可以重载所有的运算符
答案:
37、【
单选题
】
下面关于C++语言的描述错误的是( )。
[1分]
、
C++语言支持数据封装
、
C++语言中引入友元,没有破坏封装性
、
C++语言允许函数名和运算符重载
、
C++语言支持动态联编
答案:
38、【
单选题
】
在c++语言程序中,对象之间的相互通信通过( )。
[1分]
、
继承实现
、
调用成员函数实现
、
封装实现
、
函数重载实现
答案:
39、【
单选题
】
下列叙述中正确的是( )。
[1分]
、
循环队列是队列的一种链式存储结构
、
循环队列是队列的一种顺序存储结构
、
循环队列是非线性结构
、
循环队列是一种逻辑结构
答案:
40、【
单选题
】
下面不属于需求分析阶段任务的是( )。
[1分]
、
确定软件系统的功能需求
、
确定软件系统的性能需求
、
需求规格说明书评审
、
制定软件集成测试计划
答案: