【计算机类职业资格】二级C++笔试-47及答案解析.doc
《【计算机类职业资格】二级C++笔试-47及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-47及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-47 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.已知一函数的形参说明为 int arr56,则与此等效的形参说明为( )。(分数:2.00)A.int arrB.int5C.int *a6D.int(*a)62.下列说法正确的是( )。(分数:2.00)A.内联函数在运行时将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时将该函数的目标代码插入每个调用该函数的地方C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外通过加关键字 inline 定义3.下列关于虚基类的描述,错误的是( )。(分数:2.
2、00)A.设置虚基类的目的是为了消除二义性B.虚基类的构造函数在非虚基类之后调用C.若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用D.若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数4.下面程序的输出结果是( )。#includeiostreamUsing namespace std:Class Basepublic:Base(int x=0)countx;Class Derived:public Basepublic:Derved(int x=0countx;private:Base val;int mina()Derived d(1);ret
3、urn 0;(分数:2.00)A.0B.1C.01D.0015.执行语句:coutsetfill(*)setw(10)setfill(#)left123“OK“endl;后将输出( )。(分数:2.00)A.123*OKB.123#OKC.123*OK*D.123#OK#6.下列关于多态性的描述,错误的是( )。(分数:2.00)A.C+语言中的多态性分为编译时的多态性和运行时的多态性B.编译时的多态性可通过函数重载实现C.运行时的多态性可通过模板和虚函数实现D.实现运行时多态性的机制称为动态绑定7.下面有关重载函数的描述中正确的是( )。(分数:2.00)A.重载函数必须具有不同的返回值类型
4、B.重载函数形参个数必须不同C.重载函数必须具有不同的形参列表D.重载函数名可以不同8.语句 ofstream f(“DATA.DAT“,ios_base:app|ios_base:binary);的功能是建立流对象 f,试图打开文件 DATA.DAT 并与之连接,而且( )。(分数:2.00)A.若文件存在,将文件指针定位于文件首;若文件不存在,建立一个新文件B.若文件存在,将其截为空文件,若文件不存在,打开失败C.若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件D.若文件存在,打开失败;若文件不存在,建立一个新文件9.有如下类定义:class Foopublic:Foo(i
5、nt v):value(v) /Foo() /private:Foo() /int value=0; /;其中存在语法错误的行是( )。(分数:2.00)A.B.C.D.10.下列函数的运行结果是( )。#includeiostream.hint add(int a,int b);void main()extern int x,y;coutadd(x,y)endl;int x(20),y(5);int add(int a,int b)int s=a+b;return s;(分数:2.00)A.25B.30C.20D.1511.有下列二叉树,对此二叉树前序遍历的结果是( )。(分数:2.00)A
6、.B.C.D.12.树是结点的集合,它的根结点的数目是( )。(分数:2.00)A.有且只有 1 个B.1 或多于 1C.0 或 1D.至少有 2 个13.算法的空间复杂度是指( )。(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间14.下列叙述中正确的是( )。(分数:2.00)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率15.下列程序
7、的运行结果是( )。#includeiostream.hclassAint a;public:A()a=0;A()int aaa=aa;couta+;void main()A x,y(2),z(3);coutendl;(分数:2.00)A.00B.23C.34D.2516.设有定义:class Cpublic:int value;int x,*p;则以下引用形式中,正确的是( )。(分数:2.00)A.x=value;B.x=C:valueC.p=valueD.p=C:value17.有以下程序:#includeiostreamusing namespace std;#define PI 3.
8、14class Pointprivate:int x,y;public:Point(int a,int b)x=a;y=b;int getx()return x;int gety()return y;class Circle:public Pointprivate:int r;public:Circle(int a,int b,int c):Point(a,b)r=c;int getr()return r;double area()return PI *r *r;int main()Circle c1(5,7,10);coutc1.area()endl;return 0;程序执行后的输出结果是
9、( )。(分数:2.00)A.314B.157C.78.5D.153.8618.下列工具中为需求分析常用工具的是( )。(分数:2.00)A.PADB.PFDC.NSD.DFD19.下列关于虚函数的描述中,正确的是( )。(分数:2.00)A.虚函数是一个 static 类型的成员函数B.虚函数是一个非成员函数C.基类中采用 virtual 说明一个虚函数后,派生类中定义相同原型的函数时可不必加 virtual 说明D.派生类中的虚函数与基类中相同原型的虚函数具有不同的参数个数或类型20.对长度为 n 的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。(分数:2.00)A.125B.n
10、/2C.nD.n+121.在数据库设计中,将 E-R 图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段22.设 R 是一个二元关系,S 是一个三元关系,则下列运算中正确的是( )。(分数:2.00)A.RSB.RSC.RSD.RS23.有如下程序:#includeiostreamusing namespace std;int main()int *p;*p=9;cout“The value at p:“*p;return 0;编译运行程序将出现的情况是( )。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行
11、时一定输出 The value at p:9C.运行时一定输出 The value at p:*9D.运行时有可能出错24.实现运行时的多态性要使用( )。(分数:2.00)A.重载函数B.析构函数C.构造函数D.虚函数25.已知 char a;int b;float c;double d;则表达式 a*b+c-d 的结果为( )。(分数:2.00)A.doubleB.intC.floatD.char26.下面程序的运行结果为( )。#includeiostream.hClass Apublic:A()cout“1“;A()cout“2“;Class B:public:Apublic:B()c
12、out“3“;B()tout“4“;Void main()B b;(分数:2.00)A.1234B.1324C.1342D.314227.下面关于数组的初始化正确的是( )。(分数:2.00)A.charstr=a,b,cB.charstr2=a,b,cC.charstr23=a,b,b,c,e,fD.charstr()=a,b,c28.类模板 templateclass Tclass x(),其中友元函数 f 对特定类型 T(如 int),使函数f(xint)成为 xint模板类的友元,则其说明为( )。(分数:2.00)A.friend voidf();B.friend voidf(xT)
13、;C.friend voidA:f();D.friend void CT:f(xT);29.使用白盒测试法时,确定测试数据应该根据( )和指定的覆盖标准。(分数:2.00)A.程序的内部逻辑B.程序的复杂结构C.使用说明书D.程序的功能30.下面是关于派生类声明的开始部分,其中正确的是( )。(分数:2.00)A.class virtual B:public AB.virtual class B:public AC.class B:public A virtualD.class B:virtual public A31.下列是重载为非成员函数的运算符函数原型,其中错误的是( )。(分数:2.0
14、0)A.Fraction operator+(Fraction,Fraction);B.Fraction operator-(Fraction);C.Fractionoperator=(Fraction,Fraction);D.Fractionoperator+=(Fraction,Fraction);32.结构化程序设计的三种基本结构是( )。(分数:2.00)A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移33.有以下程序:#includeiostreamusing namespace std;class sampleprivate:int x;publ
15、ic:sample(int a)x=a;friend double square(sample s);double square(sample s)return s.x*s.x;int main()sample s1(20),s2(30);coutsquare(s2)endl;return 0;执行结果是( )。(分数:2.00)A.20B.30C.900D.40034.下列字符串中,正确的 C+标识符是( )。(分数:2.00)A.foo-1B.2bC.newD._25635.有以下程序:#includediostreamusing namespace std;class MyClasspu
16、blic:MyClass(int n)number=n;/拷贝构造函数MyClass(MyClass other) number=other.number;MyClass() private:int number;MyClass fun(MyClass p)MyClass temp(p);return temp;int main()MyClass obj1(10),obj2(0);MyClass obj3(obj1);obj2=fun(obj3);return 0;程序执行时,MyClass 类的拷贝构造函数被调用的次数是( )。(分数:2.00)A.5B.4C.3D.2二、填空题(总题数:1
17、5,分数:30.00)36.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:2.00)填空项 1:_37.二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是 1。(分数:2.00)填空项 1:_38.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_39.常用的软件结构设计工具是结构图(SC),也称程序结构图。其中,用矩形表示 1,用带空心圆的箭头表示传递数据。(分数:2.00)填空项 1:_40.数据库系统其内部分为三级模式,即概念模式、内模式和
18、外模式。其中, 1 是用户的数据视图,也就是用户所见到的数据模式。(分数:2.00)填空项 1:_41.将一个函数声明为一个类的友元函数必须使用关键字 1。(分数:2.00)填空项 1:_42.若有函数 fun(x,y),并且已经使函数指针变量 p 指向函数 fun,则使用 p 调用函数 fun 的方法是 1。(分数:2.00)填空项 1:_43.C+语句 const char *const p=“hello“;,所定义的指针 p 和它所指的内容都不能被 1。(分数:2.00)填空项 1:_44.类中包含了一个静态成员函数,则 main 函数中和 P.f1(P);语句具有同样功能的语句为_。#
19、includeiostream.hclass Mpublic:M(int A)A=a;B+=a;static void f1(M m);private:int A;static int B;void M:f1(M m)cout“A=“m.Aendl;cout“B=“m.Bendl;int M:B=10;void main()M P(5);P.f1(P);(分数:2.00)填空项 1:_45.下面是一个栈类的模板,其中 push 函数将元素 i 压入栈顶,pop 函数弹出栈顶元素。栈初始为空,top 值为 0,栈项元素在 stacktop-中,在下面横线处填上适当语句,完成栈类模板的定义。tem
20、plateclass Tclass Tstack enumsize=1000;T stacksize;int top;public:Tstack():top(0)void push(const T i)if(topsize)stacktop+=i;Tpop()if(top=0)exit(1);/栈空时终止运行return_;(分数:2.00)填空项 1:_46.对于下面定义的类 MyClass,请在函数 f()中添加对象成员,把 n 的值修改为 50。Class MyClassPublic:MyClass(int x)n=x;Void SetNum(int n1)n=n1;private:in
21、t n;int f()MyClass *ptr=new MyClass(45);(分数:2.00)填空项 1:_47.在下列程序的横线处填上适当的语句,使该程序的输出为 12。#includediostream.husing namespace std;class Basepublic:int a,b;Base(int i)a=i;class Derived:public Baseint a;public:Derived(int x):Base(x),b(x+1);void show()_;/输出基类数据成员 a 的值。coutbendl;void main()Derived d(1);d.s
22、how();return 0;(分数:2.00)填空项 1:_48.在 MyClass 类的定义中,对赋值运算符一进行重载。请将横线处缺失的部分补充完整。_MyClass:operator=(const MyClassrhs)if(this=rhs)return *this;value=rhs.value;return *this;(分数:2.00)填空项 1:_49.下列程序的输出结果是_。#includeiostreamusing namespace std;class Testpublic:Test()cnt+;Test()cnt-;static int Count()return cn
23、t;private:static int cnt;int Test:cnt=0;int main()coutTest:Count();Test t1,t2;Test *pT3=new Test;Test *pT4=new Test;eoutTest:Count();delete pT4;delete pT3;coutTest:Count()endl;return 0;(分数:2.00)填空项 1:_50.有以下程序:#includeiostreamusing namespace std;class Basepublic:Base()x=0;int x;class Derived1:virtua
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 47 答案 解析 DOC
