【计算机类职业资格】二级C++笔试358及答案解析.doc
《【计算机类职业资格】二级C++笔试358及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试358及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 358 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.已知语句 int m10;则下列表示引用的表示中正确的是(分数:2.00)A.int B.int C.int D.float 2.下列程序执行后的输出结果是 void funcl(int i); void func2(int i); char st“hello,frlend!“; void funcl(int i) coutsti; if(i3)i+2;func2(i); void func2(int i) coutsti; if(i3)i+2;funcl(i);
2、 main() int i=0; furicl(i); coutendl;(分数:2.00)A.helloB.helC.hloD.hlm3.下列叙述中错误的是(分数:2.00)A.二又链表是二又树的存储结构B.循环链表是循环队列的一种存储结构C.循环队列属于线性表D.带链的队列是队列的一种存储结构4.有关构造函数的说法中错误的是(分数:2.00)A.构造函数名字和类的名字一样B.构造函数在说明类变量时自动执行C.构造函数无任何函数类型D.构造函数有且只有一个5.设有以下类和对象的定义: class A public: int m; ; A k1,k2,*p1,* p2; 则下面针对成员变量 m
3、 的引用,错误的是(分数:2.00)A.k1.m=1B.k2-m2C.p1-m=3D.(*p2).m=46.以下有关类与结构体的叙述不正确的是(分数:2.00)A.结构体中只包含数据;类中封装了数据和操作B.结构体的成员对外界通常是开放的;类的成员可以被隐蔽C.用 struct 不能声明一个类型名;而 class 可以声明一个类名D.结构体成员默认为 publicl 类成员默认为 private7.下列叙述中正确的是(分数:2.00)A.实体集之间一对一的联系实际上就是一一对应的关系B.关系模型只能处理实体集之间一对一的联系C.关系模型属于格式化模型D.以上三种说法都不对8.一个 C+程序由函
4、数 A(),B(),C()和函数 P()构成,在函数 A()中分别调用了函数 B()和函数 C(),在函数 B()中调用了函数 A(),且在函数 P()中也调用了函数 A(),则可以说(分数:2.00)A.函数 B()中调用的函数 A()是函数 A()的间接递归调用B.函数 A()被函数 B()调用是直接递归调用C.函数 P()直接递归调用了函数 A()D.函数 P()中调用的函数 A()是函数 P()的嵌套9.下列叙述中错误的是(分数:2.00)A.继承是面向对象方法的一个主要特征B.对象是面向对象软件的基本模块C.类是对象的一个实例D.消息是请求对象执行某一处理或卧答某一要求的信息10.有
5、以下程序 main(int argc, chara*argv) int n,i=0; while(argv1i! =/0) n=fun();i+; coutn*argcendl; int fun() static int s=0; s+1; return s; 假设程序经编译、连接后生成可执行文件 exam.exe,若键入以下命令行 exam 123回车 则运行结果为(分数:2.00)A.6B.8C.3D.411.下面不正确的描述为(分数:2.00)A.调用函数时,实参可以是表达式B.调用函数时,实参与形参可以共用内存单元C.调用函数时,将为形参分配内存单元D.调用函数时,实参与形参的类型必须
6、一致12.设有如下定义 struct ss char name10; int age; char sex; std3, * pstd; 下面各输入语句中错误的是(分数:2.00)A.cin(* .ag;B.cinstnam;C.cinstd0.se;D.cin(p-.se);13.存取指针所指的值时,采用的运算符是(分数:2.00)A.#B. while(i10) if(i1)coBtlnlle; if(i= =5)break; i+; (分数:2.00)A.1B.10C.6D.死循环,不能确定次数15.设有基类定义: class Cbase private: int a; protected
7、: int b; public: int c; ; 派生类采用何种继承方式可以使成员变量 b 成为自己的私有成员(分数:2.00)A.私有继承B.保护继承C.公有继承D.私有、保护、公有均可16.下列程序执行后的输出结果是 #includestring.h main() char arr24; strcpy(arr, “you“); strcpy(arr1, “me“); arr03 coutarrendl; (分数:2.00)A.you for(i1;i5;i+) switch(i) case 0: case 3:a+2; case 1: case 2:a+=3; default:a+5;
8、coutaendl; (分数:2.00)A.31B.13C.10D.2019.下列叙述中正确的是(分数:2.00)A.黑箱(盒)测试方法完全不考虑程序的内部结构和内部特征B.黑箱(盒)测试方法主要考虑程序的内部结构和内部特征C.白箱(盒)测试完全不考虑程序内部的逻辑结构D.上述三种说法都不对20.将 5 个数据进行快速排序,在最坏情况下需要比较的次数是(分数:2.00)A.4B.5C.10D.2021.若变量都已正确说明,则以下程序段的输出结果是 a=2;b=3; printf(ab?“* * *a%d“: “# # #b%d“,a,b);(分数:2.00)A.没有正确的输出格式控制B.输出为
9、:* * * a=2C.输出为:# # # b2D.输出为:* * * a2 # # # b=222.下列程序执行结果是 #include iostream.h class A public: int a; A():a(10)coutaendl; ; void main() A obj1; A obj2(obj1); cout“ “obj2.aendl; (分数:2.00)A.10 10B.编译错误缺少拷贝构造函数C.10 随机数D.随机数随机数23.若执行以下程序时从键盘上输入 9,则辅出结果是 main() int n; cinn; if(n+10)coutnendl; else cout
10、n-endl; (分数:2.00)A.11B.10C.9D.824.定义静态成员函数的主要目的是(分数:2.00)A.方便调用B.有利于数据隐蔽C.处理类的静态成员变量D.便于继承25.有以下程序 main() char a,b,c, *d; a=/;b=/xbc; c/0xab;d“/0127“; coutabc*dendl; 编译时出现错误,以下叙述中正确的是(分数:2.00)A.程序中只有 a=/=;语句不正确B.b/xbc;语句不正确C.d“/0127“;语句不正确D.a/;和 c/0xab;语句都不正确26.设有如图所示的二叉树 (分数:2.00)A.FCADBEGB.ACBDFGE
11、C.ABDCGEFD.ACBDFEG27.以下程序的输出结果是 main() int a4,b5,c0,d; d! a coutdcndl; (分数:2.00)A.1B.0C.非 0 的数D.-128.有以下程序 main() int i=10,j=1; couti-“,“+jendl; 执行后输出结果是(分数:2.00)A.9,2B.10,2C.9,1D.10,129.下列叙述中正确的是(分数:2.00)A.软件工程主要研究如何编程B.数据库设计的主要任务是设计数据库管理系统C.算法的效率与数据的存储结构无关D.上述三种说法都不对30.下列叙述中正确的是(分数:2.00)A.一个算法的时间复
12、杂度大,则其空间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度也必定大C.一个算法的空间复杂度大,则其时间复杂度必定小D.上述三种说法都不对31.下面程序段的正确输出是 int w=4,x=3,y=2,z=1; cout(wx? w:zy? z:x)endl;(分数:2.00)A.0B.1C.2D.332.阅读以下程序 #includciostream.h vold main() Char line10; cinline; coutlineendl; 如运行时输入 This is example.CR,则程序的输出结果是(分数:2.00)A.ThisB.This isC.This i
13、s aD.This is an exampl33.在下列关系运算中,能不改变关系中属性个数且减少元组个数的是(分数:2.00)A.并B.差C.投影D.交34.关系表中的每一横行称为一个(分数:2.00)A.关系B.元组C.属性D.字段35.以下有关成员函数特征的叙述不正确的是(分数:2.00)A.成员函数一定是内联函数B.成员函数可以重载C.成员函数可以设置缺省参数值D.成员函数可以是静态的二、B填空题/B(总题数:15,分数:30.00)36.衡量模块独立性的两个重要度量标准是耦合性和内聚性。其中U 【1】 /U用于度量模块间互相连接的紧密程度。(分数:2.00)填空项 1:_37.在顺序查
14、找与二分查找两种方法中,可以用U 【2】 /U方法对有序线性链表进行查找。(分数:2.00)填空项 1:_38.具有记忆作用的线性表称为U 【3】 /U。(分数:2.00)填空项 1:_39.如果在一棵二叉树中有 17 个度为 2 的结点,则该二叉树中有U 【4】 /U个叶子结点。(分数:2.00)填空项 1:_40.数据流图有两种典型的结构形式,它们分别是U 【5】 /U和事务型。(分数:2.00)填空项 1:_41.函数定义的格式是U 【6】 /U函数名(形式参数表)函数体。(分数:2.00)填空项 1:_42.语句序列 long x; x0L;可用一个语句表示为U 【7】 /U。(分数:
15、2.00)填空项 1:_43.在 C+中的实型数据分为三种类型,即单精度 float、双精度 double 和U 【8】 /U。(分数:2.00)填空项 1:_44.若 a. b 和 c 均是 int 型变量,则表达式 a=(b=4)+(c2)执行后,a 的值为U 【9】 /U。(分数:2.00)填空项 1:_45.一个结构占用的空间理论上等于U 【10】 /U。(分数:2.00)填空项 1:_46.下列程序的输出结果是U 【11】 /U。 # includeiostream.h template class T T max(T x,int n) int i; T maxvx0; for(i=
16、1;in;i+) if(maxvxi) maxvxi; return maxv; void main() int a3,2,7,6,8,9; double b1.2,3.4,2.5,7.3,6.8; coutmax(a,4)“,“max(b,3)endl; (分数:2.00)填空项 1:_47.下列程序的运行结果是U 【12】 /U。 #includeiostream. h class Base public: virtual void func(int i)cout“class Base:“iendl; ; class Derived: public Base public: void fu
17、nc(double d)cout“class Derived:“dendl; ); void main() Base a, *p= Derived b; p= (* p).func(3.3); (分数:2.00)填空项 1:_48.下列程序的输出结果是U 【13】 /U。 #includeiostream. h int CalcDigital(char *str) if(str=NULL) return 0; int num_of_digital=0; for(int i=0;stri! =0x0;i+) if(stri=9 return num_of_digital; void main()
18、 char a=“Beijing2008olympic“; coutCalcDigital(a)endl; (分数:2.00)填空项 1:_49.下列程序时类 D 代码段出现编译错误,原因是U 【14】 /U。 #includeiostream. h class A public: A(char c)cout“As constructor.“cendl; A()cout“As destructor.“endl; ; class B: virtual public A public: B(char cb,char cd):A(cb) cout“Bs constructor.“cdendl; B(
19、)cout“Bs destructor.“endl; private: char b; ; class C:virtual public A public: C(char cc, char cd):A(cc) cout“Cs constructor. “cdendl; C()cout“Cs destructor.“endl; ; class D:public B,public C public: D(char cd,char ce,char cf, char cg, char ch,char ci) :C(cf,cg),B(cd,ce),A(cd),aa(ch) cout“Ds constru
20、ctor.“ciendl; D() cout“Ds destructor.“endl; private: A aa; ; void main() D ohj(a,b,c,d,e,f) (分数:2.00)填空项 1:_50.下列程序编译错误,是由于划线处缺少某个语句,该语句是U 【15】 /U。 #include iostream. h class A _ private: int numl; public: A():numl(0) A(int i):numl(i) ;class B private: int num2 public: B():num2(0) B(int i):num2(i) i
21、nt my_math(A obj1,B obj2); ; int B:my_math(A obj1,B obj2) return (obj1.num1+obj2.num2); void main(void) A obj1 (4) B obj,obi2(5); cout “obj1+obj2:“obj.my_math(obj1,obj2); (分数:2.00)填空项 1:_二级 C+笔试 358 答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.已知语句 int m10;则下列表示引用的表示中正确的是(分数:2.00)A.int B.int
22、 C.int D.float 解析:解析 引用比较特殊,即必须指向一个已有的同类型变量。引用是已有变量的别名,故选项 C 是错误的,选项 D 中变量类型不同,而选项 B 中是常数。2.下列程序执行后的输出结果是 void funcl(int i); void func2(int i); char st“hello,frlend!“; void funcl(int i) coutsti; if(i3)i+2;func2(i); void func2(int i) coutsti; if(i3)i+2;funcl(i); main() int i=0; furicl(i); coutendl;(分
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 358 答案 解析 DOC
