【计算机类职业资格】二级C++笔试-237及答案解析.doc
《【计算机类职业资格】二级C++笔试-237及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-237及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-237 及答案解析(总分:94.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列模式中,能够给出数据库物理存储结构与物理存取方法的是(分数:2.00)A.内模式B.外模式C.概念模式D.逻辑模式2.有以下程序:#include iostreamusing namespace std;class sampleprivate:int n:public:sample () sample(int m)n=m;sample add(sample s1, sample s2)this-n=s1.n+s2.n;return (*this);void disp
2、()cout “n=“nend1;int main()sample s1(1)0,s2(5),s3;s3.add(s1,s2);s3.disp();return 0;程序运行后,输出的结果是(分数:2.00)A.n=10B.n=5C.n=20D.n=153.下列叙述中正确的是(分数:2.00)A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致4.设有 a、b、c、d、m、n 均为血型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=aB
3、) int main ()char a = “Hello,World“:char*ptr = a;while (*ptr)if(*ptr= a else cout*ptr;ptr+;return 0;(分数:2.00)A.HELLO. WORLDB.Hello, WorldC.hELLO, wORLDD.hello, world6.有以下程序#include iostreamint i = 0;void fun( )static int i = 1;std:couti+,;std:couti,;int main()fun(); fun();return 0;程序执行后的输出结果是(分数:2.0
4、0)A.1,2,1,2,B.1,2,2,3,C.2,0,3,0,D.1,0,2,0,7.下列关于栈的叙述正确的是(分数:2.00)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表8.有以下类定义class Pointpublic:Pointint x = 0, int y=0) _x = x; _y = y;void Move int xoff, int yoff)_x +=xoff;_y+=yoff;void Print() constcout(_x,_y) end1;private:int_x,_y;下列语句中会发生编译错误的是(分数:2.00)
5、A.Point pt;pt.Print();B.const Point pt;pt.Print();C.Point pt;pt.Move(1, 2);D.const Point pt;pt.Move(1, 2)9.定义如下枚举类型:enumMonday, Tuesday, Wednesday, Thrusday, Friday=2;则下列语句正确的是(分数:2.00)A.表达式 Wednesday=Friday的值是 trueB.Day day; day=3;C.Day day; day=Monday+3;D.Day day; day=Tuesday+10;10.派生类的构造函数的成员初始化列
6、表中,不能包含(分数:2.00)A.基类的构造函数B.派生类中子对象的初始化C.基类的子对象初始化D.派生类中一般数据成员的初始化11.在进行任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是(分数:2.00)A.failB.eofC.badD.good12.要定义一个具有 5个元素的一维数组 vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是(分数:2.00)A.int vect=30,50,-88;B.int vect=30,50,-88,0,0;C.int veer5=30,50,-88;
7、D.int vect5=30,50,-88,0,0;13.下面概念中,不属于面向对象方法的是(分数:2.00)A.对象B.继承C.类D.过程调用14.有如下函数模板定义:template class TT func(T x, T y)return x*x*y*y;)在下列对 func的调用中,错误的是(分数:2.00)A.func(3,5);B.func(3.0,5.5);C.func(3,5.5);D.funcint(3,5.5);15.在深度为 5的满二叉树中,叶子结点的个数为(分数:2.00)A.31B.32C.16D.1516.下列对派生类的描述中,错误的是(分数:2.00)A.一个派
8、生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类中保持不变17.C+流中重载的运算符是一个(分数:2.00)A.用于输出操作的非成员函数B.用于输入操作的非成员函数C.用于输出操作的成员函数D.用于输入操作的成员函数18.下列对于软件测试的描述中正确的是(分数:2.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则19.有如下函数模板定义:templatetypename
9、T1,typename T2 typename T3T2 plus(T1 t1, T3 t3)return t1+t3;则以下调用中正确是(分数:2.00)A.plus(3,5L);B.plus(3,5L);C.plusint(3,5L);D.plusint, double(3,5L);20.函数定义为 Fun(int C.Fun(n);D.Fun(21.下面描述中,符合结构化程序设计风格的是(分数:2.00)A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B.模块只有一个入口,可以有多个出口C.注重提高程序的执行效率D.不使用 goto语句22.执行语句序列int n:ci
10、nn:switch (n)case 1:case 2:cout1;case 3:case 4: cout2: break;default: cout3:时,若键盘输入 1,则屏幕显示(分数:2.00)A.1B.2C.3D.1223.算法的空间复杂度是指(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间24.若执行语句:coutsetfill(*)setw(10)123“OK“end1 后将输出(分数:2.00)A.*123OKB.123*OKC.*123*OKD.123*OK*25.有以下程序#include iostrea
11、musing namespace std;class Complexpublic:Complex (double r=0, double i =0 :re(r) ,im (i) double real() const return re;double imag() const return im;Complex operator + (Complex c constreturn Complex(re+c.re, im+c.im);privane:double re,im;int mainComplex a =Complex(1,1)+Complex(5);couta.real()+a.imag
12、() i endlreturn 0;程序执行后的输出结果是(分数:2.00)A.6+6iB.6+1iC.1+6iD.1+1i26.下面不属于软件设计原则的是(分数:2.00)A.抽象B.模块化C.自底向上D.信息隐蔽27.关于面向对象的程序设计方法,下列说法正确的是(分数:2.00)A.“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B.“多态性”指的是对象的状态会根据运行时要求自动变化C.基类的私有成员在派生类的对象中不可访问,也不占内存空间D.在面向对象的程序设计中,结构化程序设计方法仍有着重要作用28.下列关于类和对象的叙述中,错误的是(分数:2.00)A.一个类只能
13、有一个对象B.对象是类的具体实例C.类是对某一类对象的抽象D.类和对象的关系是一种数据类型与变量的关系29.在 C+中用来实现运行时多态性的是(分数:2.00)A.重载函数B.析构函数C.构造函数D.虚函数30.有如下程序:#include iostream.husing namespace std;class Baseprotected:int i:public:int j;class Derived: public Baseint m:public:int n;int main()Derived d:d.i=0; /1d.J=0; /2d.m=0; /3d.n=0: /4return 0;
14、其中主函数中有两个赋值语句有错,这两个错误的赋值语句是(分数:2.00)A.1和2B.1和3C.2和3D.2和431.下列关于 new运算符的描述中错误的是(分数:2.00)A.使用运算符 new创建对象数组时必须定义初始值B.使用运算符 new创建对象时,会调用类的构造函数C.运算符 new可以用来动态创建对象和对象数组D.使用 new运算符创建的对象可以使用运算符 delete删除32.C+语言中 while循环和 do-while循环的主要区别是(分数:2.00)A.do-while的循环体至少无条件执行一次B.while的循环控制条件比 do-while的循环控制条件严格C.do-wh
15、ile允许从外部转到循环体内D.do-while的循环体不能是复合语句33.已知类 Myst有一个只需要一个 double型参数的构造函数,且将运算符“-”重载为友元函数。要使语句序列Myst x3.2), y(5.5), z(0.0);z=8.9-y;y=x-6.3;能够正常运行,运算符函数 operator-应该在类中声明为,(分数:2.00)A.friend Myst operator-(MystB.friend Myst operator-(Myst,Myst);C.friend Myst operator-(Myst,MystD.friend Myst operator-(Myst3
16、4.数据库设计的根本目标是要解决(分数:2.00)A.数据共享问题B.数据安全问题C.大量数据存储问题D.简化数据维护35.有以下程序#include iostreamusing namespace std;static int days =31,28.31,30,31,30,31,31,30,31,30,31;class dateprivate:int month, day, year:public:date (int m, int d, int ymonth = m;day = d;year = y;datevoid disp )cout year“ - “month “- “dayend
17、1;date operator+(int day)date dt = *this:day += dt.day;while day days dt.month - 1 )day -= tays dt.month - 1 ;if ( +dt.month = 13dt.month = 1;dt.yeare+;dr. day = day;return dt;int main()date d1( 6, 20, 2004 ), d2;d2.= d1 + 20;d2.disp ();return 0;执行后的输出结果是(分数:2.00)A.2004-7-10B.2004-6-20C.2004-7-20D.程
18、序编译时出错二、填空题(总题数:12,分数:24.00)36.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_37.在面向对象方法中,允许作用于某个对象上的操作称为 1。(分数:2.00)填空项 1:_38.若按功能划分,软件测试的方法通常分为白盒测试方法和 1 测试方法。(分数:2.00)填空项 1:_39.在数据库的概念结构设计中,常用的描述工具是 1。(分数:2.00)填空项 1:_40.数据结构分为逻辑结构和存储结构,循环队列属于 1 结构。(分数:2.00)填空项 1:_41.下列函数的功能是判断字符串
19、str是否对称,对称则返回 true,否则返回 false。请在横线处填上适当内容,实现该函数。bool fun(char *str)int i=0,j=0;while(strj)_;for(j-;ij i+,j-);return i_j;(分数:2.00)填空项 1:_42.若有如下程序段:#include iostreamusing namespace std;int main()char *p=“abcdefgh“,*r;long *q;q=(long *)p;q+;r=(char *)q;coutrend1;return 0;该程序的输出结果是_。(分数:2.00)填空项 1:_43.
20、在下面程序的横线处填上适当的内容,使程序执行后的输出结果为 1/2005。#include iostream.husing namespace std:class Datepublic:Date (int m=1,int y=0):month(m .year(yvoid Print() coutmonth“/“yearend1;_operator+(const Dateprivate:int month year;_operaror+(const Dateyear=d1.year+d2.year;month=d1.month+d2.month;year+=(month-1)/12;month=
21、(month-1)%12+l;return Datemonth, year:void main()Date d1(3,2004),d2,d3(10);d2=d3+d1;d2.Print();(分数:2.00)填空项 1:_44.在下面程序的横线处填上适当的内容,使程序执行后的输出结果为 ABCD。#include iostream.husing namespace std;class Apublic: A() coutA;class B:_public: B() coutB;class C:_public: C( coutC;class D:public B, public Cpublic:
22、D()coutD;void main()D obj;(分数:2.00)填空项 1:_45.请将下列类定义补充完整class Basepublic: void fun()cout“Base:fun“end1;class Derived:public Basepublic:void fun()_/显式调用基类的 fun函数cout“Derived:fun“end1;(分数:2.00)填空项 1:_46.与成员访问表达式 p-name 等价的表达式是_。(分数:2.00)填空项 1:_47.有如下程序:#include iostreamusing namespace std;class AApubl
23、ic:virtual void f()cout“AA“;class BB : public AApublic:BB()cout“BB“:;class CC : public BBpublic:virtual void f()BB:f():cout“CC“;int main ( )AA aa,*p; BB bb; CC cc;p=p-f();return 0;运行后的输出结果_。(分数:2.00)填空项 1:_二级 C+笔试-237 答案解析(总分:94.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列模式中,能够给出数据库物理存储结构与物理存取方法的是(分数:2
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 237 答案 解析 DOC
