【计算机类职业资格】二级C++笔试-386及答案解析.doc
《【计算机类职业资格】二级C++笔试-386及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-386及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-386 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下面程序的运行结果为( )。 #includeiostream.h void main() char a=3; switch(a) case3:cout“3”; case2:cout“2”;break; default:cout“1”; (分数:2.00)A.3B.321C.31D.322.有如下类声明: class XA int X; public: XA(int n)x=n; ; class XB:publicXA int y; public: XB(int
2、a,int b); ); 在构造函数 XB的下列定义中,正确的是( )。(分数:2.00)A.XB:XB(int a,int :x(,y(B.XB:XB(int a,int :XA(,y(C.XB:XB(int a,int :x(,XB(D.XB:XB(int a,int :XA(,XB(3.下列叙述正确的是( )。(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上 3种描述都不对4.下列程序的输出结果是( )。 #includeiostream using namespa
3、ce std; int main() 于 chara”Hello,Test”; Char*pa; while(*p) if(*p)aC.inline bool isnumber(char ;D.extem bool isnumber(char ;7.已知在一个类体中包含如下函数原型:VOLUME OPERATOR-(VOLUME)const;,下列关于这个函数的叙述中,错误的是( )。(分数:2.00)A.这是运算符-的重载运算符函数B.这个函数所重载的运算符是一个一元运算符C.这是一个成员函数D.这个函数不改变类的任何数据成员的值8.下面程序的运行结果为( )。 #includeiostre
4、am.h void swap(int a2b2;a3b3; TT Sum()return a1+a2+a3; void main() FFintx(int(1.1),2,3),y(int(4.2),5,6); coutx.Sum()y.Sum()endl;(分数:2.00)A.6.1 15.2B.6 15C.6 15.2D.6.1 1511.下列关于虚函数与函数重载区别的叙述中不正确的是( )。(分数:2.00)A.函数说明形式上不同B.函数重载允许是非成员函数,虚函数只能是成员函数C.函数重载的调用依据参数和类型的差别,虚函数则依据对象D.函数重载的本体可以在类外定义,虚函数不可以12.下列
5、叙述中正确的是( )。(分数:2.00)A.在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息B.在自顶向下、逐步细化的设计过程中,首先应设计解决问题的第一个细节C.在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D.在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法13.两个或两个以上模块之间联系的紧密程度称为( )。(分数:2.00)A.耦合性B.内聚性C.复杂性D.数据传输特性14.下列关于 this指针的叙述中,正确的是( )。(分数:2.00)A.任何与类相关的函数都有 this指针B.类的成员函数都有 this指针C.类的友元函数都有 t
6、his指针D.类的非静态成员函数才有 this指针15.有如下数组声明:int numC10,下标值引用错误的是( )。(分数:2.00)A.num10B.num5C.nam3)D.num016.源程序的文档化不包括( )。(分数:2.00)A.符号名的命名要有实际意义B.正确的文档形式C.良好的视觉组织D.正确的程序注释17.有如下程序: #includeiostream using namespace std; Class TestClass private: int x,y; public: TestClass(int i,int j) xi; yj; void print() cout
7、“print1”endl; void print()const cout”print2”(endl; ); Int main() const TestClass a(1,2); a.print(); return 0; 该程序运行后的输出结果是( )。(分数:2.00)A.printlB.print2C.printl print2D.程序编译时出错。18.下列叙述中错误的是( )。(分数:2.00)A.一种数据的逻辑结构可以有多种存储结构B.数据的存储结构与数据的处理效率无关C.数据的存储结构与数据的处理效率密切相关D.数据的存储结构在计算机中所占的空间不一定是连续的19.下列工具中为需求分析
8、常用工具的是( )。(分数:2.00)A.PADB.PFDC.N-SD.DFD20.设计数据库的存储结构属于( )。(分数:2.00)A.需求分析B.概念设计C.逻辑设计D.物理设计21.对于拷贝构造函数和赋值操作的关系,正确的是( )。(分数:2.00)A.拷贝构造函数和赋值操作是完全一样的操作B.进行赋值操作时,会调用类的构造函数C.当调用拷贝构造函数时,类的对象正在被建立并被初始化D.拷贝构造函数和赋值操作不能在同一个类中被同时定义22.下面关于 C+流的叙述中,正确的是( )。(分数:2.00)A.cin是一个输入流对象B.可以用 if stream定义一个输出流对象C.执行语句序列
9、char*y=“PQMN”;couty;将输出字符串”PQMN”的地址D.执行语句序列 char x80;cigetline(x,80);时。若键入“Happy new year”,则,中的字符串是“Happy”23.控制格式输入/输出的操作中,设置域宽的函数是( )。(分数:2.00)A.WSB.octC.setfilt(inD.setw(in24.下列虚基类的声明中正确的是( )。(分数:2.00)A.class virtual B:public AB.virtual class B:public AC.class B:public A virtualD.class B:virtual p
10、ublic A25.有如下函数模板声明: templatetypename T T Max(T a,T b)return(a=b)?a:b; 下列对函数模板 Max()的调用中错误的是( )。(分数:2.00)A.Max(3.5,4.5)B.Max(3.5,4)C.Max(doubl(3.5,4.5)D.Maxdouble(3.5,4)26.有如下程序: #includeiostream using namespace std; Class Test public: Test() n+2; Test() n-3; static int getNum() return n; private: s
11、tatic int n; ; int Test:n1; int main() Test*pnew Test; delete p; cout“n”Tes:getNum()endl; return 0; 执行后的输出结果是( )。(分数:2.00)A.n0B.n1C.n=2D.n=327.类 MyClass的定义如下: class MyClass public: MyClass()value0; SetVariable(int i)value=i; private: int value; ; 则对下列语句序列正确的描述是( )。(分数:2.00)A.语句 p;) if(i%10)=0)break;
12、 else i-; i+=11;a+=i; coutaendl; (分数:2.00)A.21B.32C.33D.1131.下面说法正确的是( )。(分数:2.00)A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外通过加关键字 inline定义32.下列程序的执行结果是( )。 #includeiostream.h class Sample int x,y; public: Sample()xy=0;) Sample(int a,int b)xa;yb; S
13、ample() if=(x=y) cout“xy”endl; else cout“x!y”endl; void disp() cout“x”x“,y”yendl; ; void main() Sample s1(2,3); s1.disp(); (分数:2.00)A.x2,y2B.x=3,y3C.x2,y3D.x3,y233.有如下类声明: class XA int X; public: XA(int n)x=n; ; class XB:public XA int y; public: XB(int a,int b); ; 在构造函数 XB的下列定义中,正确的是( )。(分数:2.00)A.X
14、B:XB(inta,int :x(,y(B.XB:XB(int a,int :XA(,y(C.XB:XB(int a,int :x(,XB(D.XB:XB(int a,int :XA(,XB(34.有下列二叉树,对此二叉树中序遍历的结果是( )。 (分数:2.00)A.ABCDEFB.BDAECFC.ABDCEFD.ABCDFE35.在对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( )来实现。(分数:2.00)A.调用语句B.命令C.中令D.消息二、B填空题/B(总题数:15,分数:30.00)36.按照“先进先出”的原则组织数据的结构的是 1。(分数:2.00)填空项 1:_3
15、7.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_38.算法的复杂度主要包括时间复杂度和 1 复杂度。(分数:2.00)填空项 1:_39.软件是程序、数据和 1 的集合。(分数:2.00)填空项 1:_40.数据库系统中实现各种数据管理功能的核心软件是 1。(分数:2.00)填空项 1:_41.假定 A为一个类,则语句 A(A Base() ; class Derived:public Base public: /完成类 Derive构造函数的定义 ; int main() Derived Obj; return 0; (分数:2.00)填空项
16、 1:_48.下列程序用于将源文件中的字母进行大小写转换,请填写 while的请句。 #includeiostream.h #includefstream.h #includeiomanip.h void main() char ch; fstream file1,file2; char fnl10,fn210; cout“输入源文件名:”; cinfn1; cout“输入目标文件名:”; cinfn2; ilel.open(fn1,ios:in); while( ) 证(ch),a,break; default:cout“1”; (分数:2.00)A.3B.321C.31D.32 解析:解析
17、 本题主要考查的是 switch语句的使用,在第一个 csse处,因为满足条件所以输出字符3,但这个分支没有 break语句终止,所以会继续执行下面的分支语句,即输出字符 2,这时出现 break语句,结束整个语句,即输出 32。2.有如下类声明: class XA int X; public: XA(int n)x=n; ; class XB:publicXA int y; public: XB(int a,int b); ); 在构造函数 XB的下列定义中,正确的是( )。(分数:2.00)A.XB:XB(int a,int :x(,y(B.XB:XB(int a,int :XA(,y(
18、C.XB:XB(int a,int :x(,XB(D.XB:XB(int a,int :XA(,XB(解析:解析 本题考查提派生类中构造函数的定义。派生类的构造首先要调用基类的构造函数,对基类成员初始化;然后对派生类中的新增成员初始化。格式:派生类名(构造函数形参表)基类构造函数(形参表)。3.下列叙述正确的是( )。(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止 D.以上 3种描述都不对解析:解析 算法的执行效率与数据的存储结构密切相关。算法的空间复杂度是指算法执行过程中所需
19、的存储空间。4.下列程序的输出结果是( )。 #includeiostream using namespace std; int main() 于 chara”Hello,Test”; Char*pa; while(*p) if(*p)aC.inline bool isnumber(char ; D.extem bool isnumber(char ;解析:解析 本题考查的是内联函数的相关知识点。函数原型应指出函数名、返回值类型以及在调用函数时知心朋友提供的参数的个数和类型,因为要声明为内联函数,故应加 inline关键宇。7.已知在一个类体中包含如下函数原型:VOLUME OPERATOR-
20、(VOLUME)const;,下列关于这个函数的叙述中,错误的是( )。(分数:2.00)A.这是运算符-的重载运算符函数B.这个函数所重载的运算符是一个一元运算符 C.这是一个成员函数D.这个函数不改变类的任何数据成员的值解析:解析 本题考核运算符的重载。题中语句为运算符“-”是一个二元运算符,且是作为常成员函数来重载的,所以它不能更新对象的数据成员,也不能调用该类中没有用 const修饰的成员函数。8.下面程序的运行结果为( )。 #includeiostream.h void swap(int a2b2;a3b3; TT Sum()return a1+a2+a3; void main()
21、 FFintx(int(1.1),2,3),y(int(4.2),5,6); coutx.Sum()y.Sum()endl;(分数:2.00)A.6.1 15.2B.6 15 C.6 15.2D.6.1 15解析:解析 本题考查模板函数的应用,表达式 int(1.1)和 int(4.2)是将 1.1和 4.2强制转换为整型。11.下列关于虚函数与函数重载区别的叙述中不正确的是( )。(分数:2.00)A.函数说明形式上不同B.函数重载允许是非成员函数,虚函数只能是成员函数C.函数重载的调用依据参数和类型的差别,虚函数则依据对象D.函数重载的本体可以在类外定义,虚函数不可以 解析:解析 A 项,
22、B 项,C 项均为虚函数与函数重载的不同之处。但有一点它们是相同的:在类内外定义均可。故 D 项错误。12.下列叙述中正确的是( )。(分数:2.00)A.在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息B.在自顶向下、逐步细化的设计过程中,首先应设计解决问题的第一个细节C.在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则 D.在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法解析:解析 在模块化程序设计中,模块之间的联系可以通过程序的控制结构来实现,在自顶向下、逐步细化的设计过程中,首先要考虑全局目标,而不是细节。在程序设计中,模块化和结构化可以
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 386 答案 解析 DOC
