【计算机类职业资格】二级C++-207及答案解析.doc
《【计算机类职业资格】二级C++-207及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-207及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-207 及答案解析(总分:82.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.已知表达式+x 中的“+”是作为成员函数重载的运算符,则与+x 等效的运算符函数调用形式为_。(分数:1.00)A.operator+(1)B.operator+(x)C.operator+()D.operator+(x)2.下列各组类型声明符中,含义相同的一组是_。(分数:1.00)A.unsigned long int 和 longB.signed short int 和 shortC.unsigned short 和 shortD.short int 和 int3.下面
2、程序错误的语句是 # include iostreamh void main( ) int * p=new int1; p=9; cout * p endl; delete p; (分数:1.00)A.B.C.D.4.下列选项中,能用作数据常量的是_。(分数:2.50)A.o115B.o118C.1.5e1.5D.115L5.下面关于对象概念的描述中,错误的是(分数:1.00)A.C+中的对象就是 C 语言中的结构变量B.对象代表着正在创建的系统中的一个实体C.对象是一个状态和操作(或方法)的封装体D.对象之间的信息传递是通过消息进行的6.下列关于栈的叙述正确的是_。(分数:1.00)A.栈顶
3、元素最先被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.以上三种说法都不对7.下列各组类型声明符中,含义相同的一组是_。(分数:2.00)A.unsigned long int 和 longB.signed short int 和 shortC.unsigned short 和 shortD.short int 和 int8.有如下头文件: int f1(); static int f2(); class MA public: int f3(); static int f4(); ; 在所描述的函数中,具有隐含的 this 指针的是_。(分数:1.00)Af1Bf2Cf3Df49
4、.下列程序的执行结果是_。 #includeiostream.h #includestdlib.h class TestClass public: int x,y; TestClass () x=y=0; TestClass (int a,int b)x=a;y=b; void disp() cout“x=“x“,y=“yend1; void main() TestClass s1(2,3); s1.disp(); (分数:2.00)A.x=2,y=2B.x=2,y=3C.x=3,y=2D.x=3,y=310.假定 MyClass 为一个类,则该类的拷贝构造函数的声明语句为(分数:2.00)A
5、.MyClassB.MyClass(MyClass x);C.MyClass(MyClass D.MyClass(MyClass *x);11.下列叙述中,正确的是_。(分数:2.00)A.false 是一个字符型常量B.false 是一个字符串常量C.11 是一个逻辑型常量D.1.1 是一个 double 常量12.C+中设置虚基类的目的是_。(分数:1.00)A.简化程序B.消除二义性C.提高运行效率D.实现数据的隐藏性13.下面类的定义,有 _ 处错误。 class MyClass public: void MyClass(); MyClass(int value); private:
6、int i=0;(分数:1.00)A.1B.2C.3D.414.一个栈的输入序列为 1,2,3,4,下面 _ 序列不可能是这个栈的输出序列(分数:2.00)A.1,3,2,4B.2,3,4,1C.4,3,1,2D.3,4,2,115.下列有关类成员的叙述中,错误的是_。(分数:2.00)A.友元函数不是类的成员函数B.类成员的默认访问权限是私有的C.类成员函数必须声明为公有的D.类的静态数据成员可以是常成员16.有如下程序: #includeiostream using namespace std; class BASE public: BASE()cout“BASE“;) ; class D
7、ERIVED:public BASE public: DERIVED()cout“DERIVED“; ; int main()DERIVED x;return 0; 执行后的输出结果是 _ 。(分数:2.00)A.BASEB.DERIVEDC.BASEDERIVEDD.DERIVEDBASE17.下列表示纯虚函数的成员函数是(分数:2.00)A.virtual int func (int);B.void func(int)=0;C.virtual void func=0;D.virtual void flmc(int)18.有如下程序 #includeiostream using namesp
8、ace std; class A public: virtual void func1()cout“A1“; void func2()cout“A2“; ; class B:public A public: void func1()cout“B1“; void func2()cout“B2“; ; int main() A *p=new B; p-func1(); P-func2(); return 0; 运行此程序,屏幕上将显示输出_。(分数:2.00)A.B1B2B.A1A2C.B1A2D.A1B219.关于抽象类下面说法正确的是(分数:1.00)A.抽象类就是其中有函数定义但没有实现的类
9、B.抽象类是可以被实例化的C.派生类不能成为抽象类D.抽象类的子类必须实现父类中的纯虚函数20.为了取代 C 中带参数的宏,在 C+中使用_。(分数:2.00)A.重载函数B.内联函数C.递归函数D.友元函数21.下面描述中属于软件测试目的的是(分数:2.00)A.改正程序中的错误B.发现程序中的错误C.表明程序没有错误D.验证程序的可靠性22.在深度为 7 的满二叉树中,叶子结点的个数为 _ 。(分数:2.00)A.32B.31C.64D.6323.应用数据库的主要目的是(分数:1.00)A.解决数据保密问题B.解决数据完整性问题C.解决数据共享问题D.解决数据量大的问题24.有如下程序:
10、int x =3; do x- =2; cout x; while(! (-x); 执行这个程序的输出结果是 _ 。(分数:1.00)A.1B.30C.1-2D.死循环25.下面有关重载函数的说法中,正确的是 _ 。(分数:1.00)A.重载函数必须具有不同的返回值类型B.重载函数形参个数必须不同C.重载函数必须有不同的形参列表D.重载函数名可以不同26.下列关于单目运算符+、-的叙述中,正确的是 _ 。(分数:1.00)A.它们的运算对象可以是任何变量和常量B.它们的运算对象可以是 char 型变量和血型变量,但不能是 float 型变量C.它们的运算对象可以是 int 型变量,但不能是 d
11、oule 型变量和 float 型变量D.它们的运算对象可以是 char 型变量、int 型变量和 float 型变量27.有如下类声明: class Base protected: int amount; public: Base(int n=0): amount(n) int getAmount()const return amount; ; class Derived: public Base protected: int value; public: Derived(int m, int n): vahle(m), Base(f1) int getData()const return
12、value+amount; ; 已知 x 是一个 Derived 对象,则下列表达式中正确的是_。(分数:1.00)A.value+x. getAmount()B.getData()-x. getAmount()C.getData()-x. amountD.value+x. amount28.数据库系统的核心是_。(分数:1.00)A.数据模型B.数据库管理系统C.数据库D.数据库管理员29.设树 T 的度为 4,其中度为 1,2,3,4 的结点个数分别为 4,2,1,1。则 T 中的叶子结点数为(分数:1.00)A.5B.6C.7D.830.已知在一个类体中包含如下函数原型:VOLUME o
13、perator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是(分数:2.00)A.这是运算符一的重载运算符函数B.这个函数所重载的运算符是一个一元运算符C.这是一个成员函数D.这个函数不改变类的任何数据成员的值31.以下定义语句中正确的是_。(分数:2.50)A.int a=b=0;B.char A=65+1,b=“b“;C.float a=1,“b=a,“c=b;D.double a=0.0;b=1.1;32.对 C+编译器区分重载函数无任何意义的信息是_。(分数:1.00)A.参数类型B.参数个数C.返回值类型D.常成员函数关键字 const33.下列运算符不能重载为友
14、元函数的是 _ 。(分数:2.00)A.= () B.+ - + -C. = =D.+= -= *= /=34.有如下程序: #includeiostream using namespace std; class Sample public: Sample() Sample()cout“*“;) ; int main() Sample temp2,*pTemp2; return 0: 执行这个程序输出星号(*)的个数为_。(分数:3.00)A.1B.2C.3D.435.下列表达式的值为 false 的是 _ 。(分数:2.00)A.13 class planet protected: doub
15、le distance; /行星距太阳的距离 int revolve; /行星的公转周期 public: planet(douhle d,int r) distance=d; revolve=r; ; class earth:public planet double circumference; /地球绕太阳公转的轨道周长 public: /定义构造函数 earth(double d,int r),并计算地球绕太阳公转的轨道周长。 /假定:circumference=2d3.1416 1 /定义 show()函数显示所有信息 2 ; int main() earth ob(9300000,36
16、5); ob.show(); return 0; (分数:2.00)39.下面程序的输出结果是 _ 1_ 。 #include iostream using namespace std; int x; void funA(int void funB(int,int int main ( ) int first; int second=5; x=6; funA(first,second) ; funB(first,second) ; coutfirst“ “second“ “xend1; return 0; void funA(int first=a+b; a=2*b; b=first+4; v
17、oid funB(int u, int second=x; v=second+4; x=u+v; (分数:1.00)40.一棵二叉树第 6 层(根结点为第一层)的结点最多为 1 个。 (分数:2.00)41.假设用一长度为 50 的数组(数组元素的下标从 0 到 49)作为栈的存储空间,栈底指针 bottom 指向栈底元素,栈顶指针 top 指向栈顶元素,如果 bottom=49,top=30(数组下标),则栈中具有 1 个元素。 (分数:2.00)42.下列程序运行时的输出结果是 1 #includeiostream using namespace std; void Xfun(int in
18、t main() int a=3,b=4; Xfun(a,b); couta*a+bendl; return 0; void Xfun(int x=y;y=z; (分数:2.00)43.动态联编中直到 1 时才能确定调用哪个函数;而静态联编则是在 2 时进行的。 (分数:1.00)44.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于 1 测试。 (分数:2.00)45.下列程序在构造函数和析构函数中申请和释放类的数据成员 int *a,申请时使用形参 b 初始化 a,请填空。 class A public: A(int b) ; A( ); private: int *a; ;
19、A:A(int b) 1 2_ ; A:A( ) 3 4_ ; (分数:1.00)46.下面程序的运行结果是 1 和 2。 #includeiostream.h) #define N 10 #define s(x)x*x #define f(x)(x*x) void main() int i1,i2; i11000/s(N);i21000/f(N); couti1“i2; (分数:2.00)47.在关系数据库中,把数据表示成二维表,每一个二维表称为 1。 (分数:2.00)48.下列程序的输出结果为 Object id=0 Object id=1 请将程序补充完整。 #includeiostr
20、eam using namespace std; class Point public: Point(int xx=0,intyy=0)X=xx;Y=yy;countP+; Point( )eountP-; int GetX( )return X; int GetY( )return Y; static void GetC( )cout“Object id=“countPendl; private: int X,Y; static int countP; ; 1/静态数据成员的初始化 int main( ) Point:GetC( ); Point A(4,5); AGetC( ); retu
21、rn 0; (分数:2.00)49.关系操作的特点是 1 操作。 (分数:2.00)50.关系数据库管理系统能实现的专门关系运算包括选择、连接和 _ 1_ 。 (分数:2.00)二级 C+-207 答案解析(总分:82.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.已知表达式+x 中的“+”是作为成员函数重载的运算符,则与+x 等效的运算符函数调用形式为_。(分数:1.00)A.operator+(1)B.operator+(x)C.operator+() D.operator+(x)解析:解析 本题考查的是前缀自增运算符的重载。由于题意中“+”是作为成员函数重载
22、的运算符,所以若要显式的调用该运算符,需要使用该类的对象加上“.”运算符,即 x.operator+();又因为为了区分前缀运算符和后缀运算符,在调用后缀运算符时,需要给出一个整型实参值,而前缀运算符则不需要,所以+x 等效的运算符函数调用形式为:x.operator+(),答案为 C 选项。2.下列各组类型声明符中,含义相同的一组是_。(分数:1.00)A.unsigned long int 和 longB.signed short int 和 short C.unsigned short 和 shortD.short int 和 int解析:解析 本题考查整型变量的类型,A、C 选项中前者
23、为无符号的,后者为有符号的,D 选项中short int 为 2 个字节,int 为 4 个字节。3.下面程序错误的语句是 # include iostreamh void main( ) int * p=new int1; p=9; cout * p endl; delete p; (分数:1.00)A.B. C.D.解析:解析:本题考查的是指针的使用,p 是指向 int 型的指针,若想给它指向的元素赋值,应使用 * 符号,直接赋值相当于改变了原来 P 存储的地址。4.下列选项中,能用作数据常量的是_。(分数:2.50)A.o115B.o118C.1.5e1.5D.115L 解析:解析 选项
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C207 答案 解析 DOC
