ImageVerifierCode 换一换
格式:DOC , 页数:13 ,大小:76KB ,
资源ID:1324837      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1324837.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】二级C++笔试98及答案解析.doc)为本站会员(bonesoil321)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】二级C++笔试98及答案解析.doc

1、二级 C+笔试 98及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.有如下语句序列: int k=0; dOk+=5;cout$;) while(k19); while(k-0)cout*;执行上面的语句序列输出字符$和*的个数分别是( )。(分数:2.00)A.4和 20B.5和 20C.4和 21D.5和 212.在结构化设计方法中生成的结构图(SC)中,带有箭头的连线表示( )(分数:2.00)A.模块之间的调用关系,B.程序的组成成分C.控制程序的执行顺序D.数据的流向3.下面的函数模板定义中错误的是( )。(分数:2.00)A

2、templateclass QB.templateclass Q QF(Qreturn Q-x; QF(Qreturn x+x;C.templateclass TD.templateclass T TF(Treturn x*x; boolP(Treturn X1;)4.下列说法中错误的是( )。(分数:2.00)A.公有继承时基类中的 public成员在派生类中仍是 public的B.公有继承时基类中的 private成员在派生类中仍是 private的C.私有继承时基类中的 public成员在派生类中是 private的D.保护继承时基类中的 public成员在派生类中是 protecte

3、d的5.下列叙述中正确的是( )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的联系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.上述三种说法都不对6.类的析构函数的作用是( )。(分数:2.00)A.一般成员函数B.类的初始化C.对象的初始化D.释放由对象所占用的资源7.下列关于 this指针的叙述中,正确的是( )。(分数:2.00)A.this指针是一个隐含指针,它隐含于类的成员函数中B.只有在使用 this时,系统才会将对象的地址赋值给 thisC.类的友元函数也有 this指针D.this指针表示

4、了成员函数当前操作的数据所属的对象8.有如下程序 #includeiostream.h void main() char ch25=“6937“,“8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=chi; for(i=0;i2;i+) for(j=0;pij/0;j+=2) s=10*s+pij-0; couts; return 0; 该程序的输出结果是( )。(分数:2.00)A.69825B.63825C.6385D.6938259.在函数的返回值类型与返回值表达式类型的描述中,错误的是( )。(分数:2.00)A.函数返回值的类型是在定义函数时确定的,在

5、函数调用时是不能改变的B.函数返回值的类型就是返回值表达式的类型C.函数返回值的类型与返回值类型不同时,函数表达式类型应转换成返回值类型D.函数返回值的类型决定了返回值表达式的类型10.已有函数 max(a,b),为了使函数指针变量 p指向函数 max,则下面选项中赋值方法正确的是( )。(分数:2.00)A.p=maxB.*p=maxC.p=max(a,D.*p=max(a,11.有如下程序: #includeiostream.h class Base protected:int i; public:int j; ; class Derived:public Base int m; publ

6、ic:int n; ; int main() Derived d; d.i=0; /1 d.j=0; /2 d.m=0; /3 d.n=0; /4 return 0; 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是( )。(分数:2.00)A.1和2B.1)和3C.2和3D.2和412.对于常数据成员,下面描述正确的是( )。(分数:2.00)A.常数据成员可以不初始化,并且不能更新B.常数据成员必须被初始化,并且不能更新C.常数据成员可以不初始化,并且可以被更新D.常数据成员必须被初始化,并且可以被更新13.有如下程序: #includeiostream using namespac

7、e std; int main() cout.fill(*); cout.width(5); coutscientific314.15926535endl; retrun 0; 程序运行后,输出的结果是( )。(分数:2.00)A.3.141593e+002B.3.1416e+002C.*3.14e+002D.314.1614.下列重载函数中,正确的是( )。(分数:2.00)A.void fun(int a,float ;void fun(int c,floatB.void fun(int a,float ;void fun(float a,intC.float fun(int a,floa

8、t ;int fun(int b,floatD.int fun(int a,int ;float fun(int a,int15.数据库的故障恢复一般是由( )。(分数:2.00)A.数据流图完成的B.数据字典完成的C.DBA完成的D.PAD图完成的16.下面程序的运行结果是( )。 #includeiostream.h int x=5; int fun(int a) int c; C=X*a; retum c; void main() int x=3,a=4; x=x+fun(a); cout“x“”Xendl; (分数:2.00)A.x=15B.x=17C.x=23D.x=2517.下列关

9、于信息和数据的叙述不正确的是( )。(分数:2.00)A.信息是数据的符号表示B.信息是数据的内涵C.信息是现实世界事物的存在方式或运动状态的反映D.数据是描述现实世界事物的符号记录18.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败函数名是( )。(分数:2.00)A.failB.eofC.badD.good19.对下列程序段的描述正确的是( )。 #includeiostream.h int Fun(int,int) void main() coutFun(5,50)endl; int Fun(int x,int y) ret

10、urn X*X+y*y; (分数:2.00)A.该函数定义正确,但函数调用方式错误B.该函数调用方式正确,但函数定义错误C.该函数定义和调用方式都正确D.该函数定义和调用方式都错误20.以下不能正确进行字符串赋值初值的语句是( )。(分数:2.00)A.char str5=“good!“;B.char str=“good!“;C.char *str=“good!“;D.char str5=g,o,o,d);21.对线性表进行二分法检索,其前提条件是( )。(分数:2.00)A.线性表以顺序方式存储,并按关键码值排好序B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链接方式存储,

11、并按关键码值排好序D.线性表以链接方式存储,并按关键码的检索频率排好序22.以下( )特征不是面向对象思想中的主要特征。(分数:2.00)A.多态B.继承C.封装D.垃圾回收23.下面关于构造函数和析构函数的描述中,错误的是( )。(分数:2.00)A.析构函数可以声明为虚函数B.对虚析构函数的调用可以采用动联编C.一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响D.构造函数可以声明为虚函数24.下列关于 break语句的叙述不正确的是( )。(分数:2.00)A.break语句可用在循环体中,它将使执行流程跳出本层循环体B.break语句可用在 switch语句中,它将使执行

12、流程跳出当前 switch语句C.break语句可用在 if语句中,它将使执行流程跳出当前订语句D.break语句在一层循环体中可以出现多次25.数据库系统的基础是( )。(分数:2.00)A.数据库技术B.数据库分析C.数据库开发D.数据库管理系统26.下列关于 new运算符的描述中错误的是( )。(分数:2.00)A.使用运算符 new创建对象数组时必须定义初始值B.使用运算符 new创建对象时,会调用类的构造函数C.运算符 new可以用来动态创建对象和对象数组D.使用 new运算符创建的对象可以使用运算符 delete删除27.下面的语句中错误的是( )。(分数:2.00)A.int a

13、5;int x;B.const int a=5;int x;C.int n=5;int *p=new int;D.const int n=5;int *p=new int;28.要定义数组 A,使得其中每个元素的数据依次为:3、9、4、8、0、0、0,错误的定义语句是( )。(分数:2.00)A.int A=3,9,4,8,0,0,0);B.int A9:3,9,4,8,0,0,0);C.int A=3,9,4,8);D.int A7=3,9,4,8);29.有以下程序: #includeiostream using namespace std; int main() int x=15; w

14、hile(x10 p-f1(); p-f2(); return (); ) 执行后的输出结果是( )。(分数:2.00)A.F1Derive F2BaseB.F1Derive F2DeriveC.F1Base F2BaseD.F1Base F2Derive31.下列有关拷贝构造函数的描述中错误的是( )。(分数:2.00)A.拷贝构造函数是一种构造函数B.拷贝构造函数与一般的构造函数一样,可以设置多个形参C.每一个类中都必须有一个拷贝构造函数D.拷贝构造函数的功能是用一个已知对象去初始化一个正在创建的对象。32.以下非法的赋值表达式是( )。(分数:2.00)A.n=(i=2,+;B.j+;C

15、i+1);D.x=j0;33.在数据库系统中,描述数据库中全体数据的逻辑结构和特征的数据模式为( )。(分数:2.00)A.概念模式B.外模式C.内模式D.物理模式34.数据库系统支持数据的逻辑独立性,依靠的是( )。(分数:2.00)A.DDL语言和 DML语言完全独立B.定义完整件约束条件C.数据库的三级模式结构D.模式分级及各级模式之间的映像机制35.以下程序的输出结果是( )。 #includeiostream using namespace std; int main() cout.fill(*); cout.width(5); couthex100endl; return (

16、); (分数:2.00)A.*100B.*64C.100*D.64*二、B填空题/B(总题数:14,分数:28.00)36.某二叉树中度为 2的结点有 18个,则该二叉树中有U 【1】 /U个叶子结点。(分数:2.00)填空项 1:_37.在算法的 5个特性中,算法必须能在执行有限个步骤之后终止,指的是算法的U 【2】 /U性。(分数:2.00)填空项 1:_38.在面向对象方法中,允许作用于某个对象上的操作称为U 【3】 /U。(分数:2.00)填空项 1:_39.在调用一个函数的过程中可以直接或间接地调用该函数,这种调用称为U 【4】 /U调用,该函数称为U 【4】 /U函数。(分数:2.

17、00)填空项 1:_40.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的U 【5】 /U。(分数:2.00)填空项 1:_41.数学表达式 (分数:2.00)填空项 1:_42.假定一个一维数组的定义为“char a8,b;”若把该数组最后一个元素赋值给 b应该采取的表达式为:U 【7】 /U。(分数:2.00)填空项 1:_43.若有: int i=1000; int *ip= ; class derived2:public Base public: virtual void who()cout“Derived2 Class“endl;) ;int main(in

18、t argc,char*argv) base obj1,*P; deliVedl obj2; derived2 obj3; p=) while(k19); while(k-0)cout*;执行上面的语句序列输出字符$和*的个数分别是( )。(分数:2.00)A.4和 20 B.5和 20C.4和 21D.5和 21解析:2.在结构化设计方法中生成的结构图(SC)中,带有箭头的连线表示( )(分数:2.00)A.模块之间的调用关系, B.程序的组成成分C.控制程序的执行顺序D.数据的流向解析:3.下面的函数模板定义中错误的是( )。(分数:2.00)A.templateclass Q B.tem

19、plateclass Q QF(Qreturn Q-x; QF(Qreturn x+x;C.templateclass TD.templateclass T TF(Treturn x*x; boolP(Treturn X1;)解析:4.下列说法中错误的是( )。(分数:2.00)A.公有继承时基类中的 public成员在派生类中仍是 public的B.公有继承时基类中的 private成员在派生类中仍是 private的 C.私有继承时基类中的 public成员在派生类中是 private的D.保护继承时基类中的 public成员在派生类中是 protected的解析:5.下列叙述中正确的是(

20、 )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的联系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小 D.上述三种说法都不对解析:6.类的析构函数的作用是( )。(分数:2.00)A.一般成员函数B.类的初始化C.对象的初始化D.释放由对象所占用的资源 解析:7.下列关于 this指针的叙述中,正确的是( )。(分数:2.00)A.this指针是一个隐含指针,它隐含于类的成员函数中B.只有在使用 this时,系统才会将对象的地址赋值给 thisC.类的友元函数也有 this指针D.this指针表示了成员函数当

21、前操作的数据所属的对象 解析:8.有如下程序 #includeiostream.h void main() char ch25=“6937“,“8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=chi; for(i=0;i2;i+) for(j=0;pij/0;j+=2) s=10*s+pij-0; couts; return 0; 该程序的输出结果是( )。(分数:2.00)A.69825B.63825C.6385 D.693825解析:9.在函数的返回值类型与返回值表达式类型的描述中,错误的是( )。(分数:2.00)A.函数返回值的类型是在定义函数时确定的

22、在函数调用时是不能改变的B.函数返回值的类型就是返回值表达式的类型 C.函数返回值的类型与返回值类型不同时,函数表达式类型应转换成返回值类型D.函数返回值的类型决定了返回值表达式的类型解析:10.已有函数 max(a,b),为了使函数指针变量 p指向函数 max,则下面选项中赋值方法正确的是( )。(分数:2.00)A.p=max B.*p=maxC.p=max(a,D.*p=max(a,解析:11.有如下程序: #includeiostream.h class Base protected:int i; public:int j; ; class Derived:public Base i

23、nt m; public:int n; ; int main() Derived d; d.i=0; /1 d.j=0; /2 d.m=0; /3 d.n=0; /4 return 0; 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是( )。(分数:2.00)A.1和2B.1)和3 C.2和3D.2和4解析:12.对于常数据成员,下面描述正确的是( )。(分数:2.00)A.常数据成员可以不初始化,并且不能更新B.常数据成员必须被初始化,并且不能更新 C.常数据成员可以不初始化,并且可以被更新D.常数据成员必须被初始化,并且可以被更新解析:13.有如下程序: #includeiostr

24、eam using namespace std; int main() cout.fill(*); cout.width(5); coutscientific314.15926535endl; retrun 0; 程序运行后,输出的结果是( )。(分数:2.00)A.3.141593e+002 B.3.1416e+002C.*3.14e+002D.314.16解析:14.下列重载函数中,正确的是( )。(分数:2.00)A.void fun(int a,float ;void fun(int c,floatB.void fun(int a,float ;void fun(float a,int

25、 C.float fun(int a,float ;int fun(int b,floatD.int fun(int a,int ;float fun(int a,int解析:15.数据库的故障恢复一般是由( )。(分数:2.00)A.数据流图完成的B.数据字典完成的C.DBA完成的 D.PAD图完成的解析:16.下面程序的运行结果是( )。 #includeiostream.h int x=5; int fun(int a) int c; C=X*a; retum c; void main() int x=3,a=4; x=x+fun(a); cout“x“”Xendl; (分数:2.00)

26、A.x=15B.x=17C.x=23 D.x=25解析:17.下列关于信息和数据的叙述不正确的是( )。(分数:2.00)A.信息是数据的符号表示 B.信息是数据的内涵C.信息是现实世界事物的存在方式或运动状态的反映D.数据是描述现实世界事物的符号记录解析:18.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败函数名是( )。(分数:2.00)A.fail B.eofC.badD.good解析:19.对下列程序段的描述正确的是( )。 #includeiostream.h int Fun(int,int) void main() c

27、outFun(5,50)endl; int Fun(int x,int y) return X*X+y*y; (分数:2.00)A.该函数定义正确,但函数调用方式错误B.该函数调用方式正确,但函数定义错误C.该函数定义和调用方式都正确 D.该函数定义和调用方式都错误解析:20.以下不能正确进行字符串赋值初值的语句是( )。(分数:2.00)A.char str5=“good!“; B.char str=“good!“;C.char *str=“good!“;D.char str5=g,o,o,d);解析:21.对线性表进行二分法检索,其前提条件是( )。(分数:2.00)A.线性表以顺序方式存

28、储,并按关键码值排好序 B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链接方式存储,并按关键码值排好序D.线性表以链接方式存储,并按关键码的检索频率排好序解析:22.以下( )特征不是面向对象思想中的主要特征。(分数:2.00)A.多态B.继承C.封装D.垃圾回收 解析:23.下面关于构造函数和析构函数的描述中,错误的是( )。(分数:2.00)A.析构函数可以声明为虚函数B.对虚析构函数的调用可以采用动联编C.一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响D.构造函数可以声明为虚函数 解析:24.下列关于 break语句的叙述不正确的是( )。(分数:2.

29、00)A.break语句可用在循环体中,它将使执行流程跳出本层循环体B.break语句可用在 switch语句中,它将使执行流程跳出当前 switch语句C.break语句可用在 if语句中,它将使执行流程跳出当前订语句 D.break语句在一层循环体中可以出现多次解析:25.数据库系统的基础是( )。(分数:2.00)A.数据库技术B.数据库分析C.数据库开发D.数据库管理系统 解析:26.下列关于 new运算符的描述中错误的是( )。(分数:2.00)A.使用运算符 new创建对象数组时必须定义初始值 B.使用运算符 new创建对象时,会调用类的构造函数C.运算符 new可以用来动态创建对

30、象和对象数组D.使用 new运算符创建的对象可以使用运算符 delete删除解析:27.下面的语句中错误的是( )。(分数:2.00)A.int a=5;int x; B.const int a=5;int x;C.int n=5;int *p=new int;D.const int n=5;int *p=new int;解析:28.要定义数组 A,使得其中每个元素的数据依次为:3、9、4、8、0、0、0,错误的定义语句是( )。(分数:2.00)A.int A=3,9,4,8,0,0,0);B.int A9:3,9,4,8,0,0,0);C.int A=3,9,4,8); D.int A7=

31、3,9,4,8);解析:29.有以下程序: #includeiostream using namespace std; int main() int x=15; while(x10 p-f1(); p-f2(); return (); ) 执行后的输出结果是( )。(分数:2.00)A.F1Derive F2Base B.F1Derive F2DeriveC.F1Base F2BaseD.F1Base F2Derive解析:31.下列有关拷贝构造函数的描述中错误的是( )。(分数:2.00)A.拷贝构造函数是一种构造函数B.拷贝构造函数与一般的构造函数一样,可以设置多个形参 C.每一个类中都必

32、须有一个拷贝构造函数D.拷贝构造函数的功能是用一个已知对象去初始化一个正在创建的对象。解析:32.以下非法的赋值表达式是( )。(分数:2.00)A.n=(i=2,+;B.j+;C.+(i+1); D.x=j0;解析:33.在数据库系统中,描述数据库中全体数据的逻辑结构和特征的数据模式为( )。(分数:2.00)A.概念模式 B.外模式C.内模式D.物理模式解析:34.数据库系统支持数据的逻辑独立性,依靠的是( )。(分数:2.00)A.DDL语言和 DML语言完全独立B.定义完整件约束条件 C.数据库的三级模式结构D.模式分级及各级模式之间的映像机制解析:35.以下程序的输出结果是( )。

33、includeiostream using namespace std; int main() cout.fill(*); cout.width(5); couthex100endl; return (); (分数:2.00)A.*100B.*64 C.100*D.64*解析:二、B填空题/B(总题数:14,分数:28.00)36.某二叉树中度为 2的结点有 18个,则该二叉树中有U 【1】 /U个叶子结点。(分数:2.00)填空项 1:_ (正确答案:19)解析:37.在算法的 5个特性中,算法必须能在执行有限个步骤之后终止,指的是算法的U 【2】 /U性。(分数:2.00)填空项 1:_

34、 (正确答案:有穷)解析:38.在面向对象方法中,允许作用于某个对象上的操作称为U 【3】 /U。(分数:2.00)填空项 1:_ (正确答案:方法)解析:39.在调用一个函数的过程中可以直接或间接地调用该函数,这种调用称为U 【4】 /U调用,该函数称为U 【4】 /U函数。(分数:2.00)填空项 1:_ (正确答案:递归)解析:40.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的U 【5】 /U。(分数:2.00)填空项 1:_ (正确答案:可重用性)解析:41.数学表达式 (分数:2.00)填空项 1:_ (正确答案:pow(x,y)/sqrt(2*3.14

35、))解析:42.假定一个一维数组的定义为“char a8,b;”若把该数组最后一个元素赋值给 b应该采取的表达式为:U 【7】 /U。(分数:2.00)填空项 1:_ (正确答案:b=a7)解析:43.若有: int i=1000; int *ip= ; class derived2:public Base public: virtual void who()cout“Derived2 Class“endl;) ;int main(int argc,char*argv) base obj1,*P; deliVedl obj2; derived2 obj3; p=&obj1; p-who();

36、p=&obj2; p-who(); p=&obj3; p-who(); return 0; (分数:2.00)填空项 1:_ (正确答案:Base Class)解析:Derivedl Class Derived2 Class49.下面程序的输出结果是U 【15】 /U。 #incldeiostreamn #includemath using namespace std; class point private: double x; double y; public: point(double a,double b) x=a; y=b; friend double distance(point a,point b); ; double distance(point a,point b) return sqrt(a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y); int main() point p1(1,2); point p2(5,2); coutdistalice(p1,p2)endl; return 0; (分数:2.00)填空项 1:_ (正确答案:4)解析:

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1