【计算机类职业资格】二级C++笔试-26及答案解析.doc
《【计算机类职业资格】二级C++笔试-26及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-26及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-26 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:30,分数:70.00)1.对于 switch(C) 中的变量 c 不能定义为的类型是( )。(分数:2.00)A.unsignedB.intC.charD.float2.下面内容不属于使用软件开发工具好处的是( )。(分数:2.00)A.减少编程工作量B.保证软件开发的质量和进度C.节约软件开发人员的时间和精力D.使软件开发人员将时间和精力花费在程序的编制和调试上3.下列关于纯虚函数的描述中,正确的是( )。(分数:2.00)A.纯虚函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声
2、明总是以“=0;”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不能是派生类4.有如下程序:class Base1public:int a;void b() return;void c(float) a=float;class Base2public:void b()void c()private:int a;class Derived:public Basel,public Base2public:void b();void main()Derived obj;obj.a=1; /obj.b(); /obj.c(10); /下面各项对语句的描述中,正确的是( )。(分数:2.00)
3、A.语句都有二义性B.语句有二义性,没有二义性C.语句有二义性,没有二义性D.语句有二义性,没有二义性5.以下特点中不属于线性表的顺序存储结构的是( )。(分数:2.00)A.线性表中所有元素所占的存储空间是连续的B.线性表的数据元素在存储空间中是按逻辑顺序依次存放的C.线性表中所有元素所占的存储空间是连续的D.前后件两个元素在存储空间是紧邻的6.下列关于 swith 语句的描述中,正确的是( )。(分数:2.00)A.switch 语句中 default 字句可以没有,也可有一个B.switch 语句中每个语句序列中必须有 break 语句C.switch 语句中 default 字句只能放
4、在最后D.switch 语句中 case 子句后面的表达式可以是整型表达式7.一个 C+程序的执行总是从( )。(分数:2.00)A.本程序的第 1 个函数开始,到本程序文件的最后一个函数结束B.本程序的第 1 个函数开始,到本程序的 main()函数结束C.本程序的 main()函数开始,到 main()函数结束D.本程序的 main()函数开始,到本程序的最后一个函数结束8.定义如下一维数组:inta5,*p=a;则下面描述中,错误的是( )。(分数:2.00)A.表达式 p=p+1 是合法的B.表达式 a=a+1 是合法的C.表达式 p-a 是合法的D.表达式 a+2 是合法的9.应在下
5、列程序画线处填入的正确语句是 ( )。#include iostreamusing namespace std;clas Basepublic:void fun()cout“Base:fun“end1;class Derived : public Basevoid fun()_/显示调用基类的函数 fun()cout“Derived:fun“end1;(分数:2.00)A.fun();B.Base.fun();C.Base:fun();D.Base-fun();10.若有以下程序:#include iostreamusing namespace std;class Aprivate:int a
6、;public:void seta(int x)a=x;void showa,( )couta“, “;class Bprivate:int b;public:void setb(int x)b=x;void showb ()coutb“, “;class C : public A, private Bprivate:int c;public:void setc(int x,int y, int z)c=z;sera (x);seth (y);void showc()showa();showb();coutcend1;int main ()C c;c.setc(1,2,3);c.showc()
7、;return 0;程序执行后的输出结果是( )。(分数:2.00)A.1,2,3B.1,1,1C.2,2,2D.3,3,311.有以下程序:#include iostreamusing namespace std;class Basepublic:Base()virtual void f1()cout“f1 of base“end1;Base();class Derive: public Basepublic:void fl(int x)cout“f1 of derive“end1; ;int main ( )Base *p;Derive obj1;p=p-f1 ( );return 0;(
8、分数:2.00)A.编译时出错B.f1 of deriveC.f1 of baseD.以上答案都不对12.在待排序的元素序列基本有序的前提下,效率最高的排序方法是( )。(分数:2.00)A.插入排序B.选择排序C.快速排序D.堆排序13.下列关于常数据成员的描述中,错误的是( )。(分数:2.00)A.常数据成员必须进行初始化,并且不能更新B.使用 const 说明的数据成员称为常数据成员C.可以在类体外面定义常数据成员D.常数据成员的初始化只能通过构造函数的成员初始化列表进行14.在下面的类定义中,错误的语句是( )。class Samplepublic:Sample(int val);
9、/Sample(): /private:int a=2.5; /Sample(); /;(分数:2.00)A.B.C.D.15.以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句组的选项是 ( )。(分数:2.00)A.ofstream cfile; cfile.open( “d : ofile.txt“ );B.ofstream * cfile = new ofstream; cfile - open( “d : ofile.txt );C.ofstream cfile( “d: ofile.txt“ );D.ofstream * cfile = new( “d : ofile.txt
10、“ )16.一个向量第 1 个元素的存储地址是 100,每个元素的长度为 2,则第 5 个元素的地址是( )。(分数:2.00)A.110B.108C.100D.12017.若有以下程序段;#includeiostreamusing namespace std;int main()int a=1,4,5;int *p=int main ( )char b18 = “abcdefg“;char b28,*pb=b1+3;while (-pb=b1)strcpy (b2, Pb) ;coutstrlen (b2) end1;return 0;程序运行后的输出结果是( )。(分数:2.00)A.8B
11、.3C.1D.719.若有以下程序:#include iostreamusing namespace std;class pointprivate:int x, y;public:point ( )x=0;y=0;void setpoint(int x1,int y1)x=x1;y=y1;void dispoint ()cout“x=“x“ , “y=“yend1;int main ( )point *p=new point;p-setpoint (5, 12);p-dispoint ();return 0;程序运行后的输出结果是( )。(分数:2.00)A.x=12,y=12B.x=5,y=
12、5C.x=12,y=5D.x=5,y=1220.以下各项排序技术中属于交换类排序法的是( )。(分数:2.00)A.冒泡排序B.希尔排序C.堆排序D.简单选择排序21.下列关于继承的描述中,错误的是( )。(分数:3.00)A.析构函数不能被继承B.派生类是基类的组合C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生保持不变22.有以下程序:#include iostreamusing namespace std;class sampleprivate:int n;public:sample()sample (int m)n=m;sample
13、add(sample s1,sample s2)this-n=s1.n+s2.n;return (*this);void disp()cout“n=“nend1;int main ()sample s1(10) ,s2(5),s3;s3.add(s1,s2);s3.disp();return 0;程序运行后,输出的结果是( )。(分数:3.00)A.n=10B.n=5C.n=20D.n=1523.有以下程序:#includeiostreamusing namespace std;int main ()int a=1,2,3, 4,5, 6, 7,8,9, 10, 11, 12;int *p=a
14、+5, *q=0;*q=* (p+5);cout*p“ “*qend1;return 0;(分数:3.00)A.运行后报错B.66C.6 12D.5 524.若 x、a、b 和 c 均是 int 型变量,则执行表达式“x=(a=1,b=2)”后的结果是( )。(分数:3.00)A.1B.2C.3D.x 无确定值25.数据流图用于描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名称标识的图符不属于数据流图合法图符的是( )。(分数:3.00)A.控制流B.加工C.贮存文件D.源和潭26.关系数据库的数据及更新操作必须遵循的完整性规则是( )。(分数:3.00)A.实体完整性和参照完
15、整性B.参照完整性和用户定义的完整性C.实体完整性和用户定义的完整性D.实体完整性、参照完整性和用户定义的完整性27.有如下函数模板的定义:templateclass TT func(T x,T y)return x*x+y*y;在下列对 func()的调用中,不正确的是( )。(分数:3.00)A.func(3,5);B.func(3,5);C.func(3,5.5);D.funcint(3,5.5);28.堆栈 s 进行下列操作:push(1);push(2);pop();pop();后,此时的栈顶元素为( )。(分数:3.00)A.1B.2C.0D.不确定29.在面向对象方法中,一个对象
16、请求另一对象为其服务的方式是通过发送( )。(分数:3.00)A.调用语句B.命令C.口令D.消息30.程序流程图中的箭头代表的是( )。(分数:3.00)A.数据流B.控制流C.调用关系D.组成关系二、填空题(总题数:14,分数:30.00)31.算法的复杂度包括时间复杂度和 【1】 。(分数:2.00)填空项 1:_32.若按层次顺序将一棵有 n 个节点的完全二叉树的所有节点从 1 到 n 编号,那么当 i 为偶数且小于 n 时,节点 i 的右兄弟是节点 【2】 ,否则节点 i 没有右兄弟。(分数:2.00)填空项 1:_33.面向对象程序设计支持的 3 大特性为:封装性、继承性和 【3】
17、 。(分数:2.00)填空项 1:_34.关系代数运算是以集合运算为基础的运算,它的基本操作是 【4】 、并、差。(分数:2.00)填空项 1:_35.软件测试是为了 【5】 而执行程序的过程。(分数:2.00)填空项 1:_36.以下程序的输出结果是 【6】 。#include iostreamusing namespace std;int main()int s,i;for(s=0,i=1;i3;i+)s+=i;coutsend1;return 0;(分数:2.00)填空项 1:_37.有如下程序:#include iostreamusing namespace std;int strle
18、(char a,char b)int num=O,n=O;while (* (a+num) !=/0)num+;while (b n )* (a+num)=b n;num+;n+;return(num);int main ()char strl80,str280,*p1=str1,*p2=str2;cinp1;cinp2;coutstrle(p1,p2)end1;return 0;运行上述程序,如果从键盘输入字符串 qwerty 和字符串 abcd,则程序的输出结果是 【7】 。(分数:2.00)填空项 1:_38.下面程序的输出结果是 【8】 。#include iostreamusing
19、namespace std;int x;void funA(intvoid funB(int,intint 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;void funB(int u, int second=x;v=second+4;x=u+v;(分数:2.00)填空项 1:_39.在类中定义和实现的函数可以称为 【9】 。(分数:2.00
20、)填空项 1:_40.在 C+中,打开一个文件,就是将这个文件与一个 【10】 建立关联,关闭一个文件,就是取消这种关联。(分数:2.00)填空项 1:_41.下面是“二维向量”vector2D 的定义,其中作为成员函数重载的运算符“+”的功能是将两向量的分量 x 和 y 对应相加,然后返回作为相加结果的新对象。请填空补充完整。class vector2Ddouble x; x 分量double y; y 分量public:vector2D(double x0=0,double y0=0) :x(x0),y(y0)void show(cout (,y) ;vector2D operator +
21、 (vector2D) ;【11】 operator + (vector2D a) return vector2D( 【12】 );(分数:4.00)填空项 1:_42.若有以下程序:#include iostreamusing namespace std;class sampleint x;public:sample()void setx(int i)x=i;friend iht fun(sample B,int n)int m=0;forint i=0;in;i+)if(Bi.xm)m=Bi.x;return.m;int main ( )sample A10;int arr=90,87,4
22、2,78,97,84,60,55,78,65;for(int i=O;i10;i+)Ai.setx(arri);coutfun(A, 10)end1;return 0;该程序运行后的输出结果是 【13】 。(分数:2.00)填空项 1:_43.有以下程序:#include iostream.hclass Aint a;public:A( int i )a = i;void display()couta;class Bint b;public:B (int j )b = j;void display()coutb;class C : public B, public Aint c;public:
23、C(int k) : A( k-2), B(k + 2)c= k;void display()A : display();B : display();coutc;int main ( )C obj ( 10 );obj.display();return 0;执行后的输出结果为 【14】 。(分数:2.00)填空项 1:_44.下面程序的预设功能是:将文本文件 readme 中的内容读出,显示在屏幕上。#include fstreamusing namespace std;int main ()char buf 80 ;ifstream file( “readme“);while (_)file
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 26 答案 解析 DOC
