【计算机类职业资格】二级C++笔试-292及答案解析.doc
《【计算机类职业资格】二级C++笔试-292及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-292及答案解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-292 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列叙述中正确的是( )。(分数:2.00)A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构2.有如下函数模板声明:templatetypename TT Max(Ta,Tb)return(a=b)?a: b;下列对函数模板 Max()的调用中错误的是( )。(分数:2.00)A.Max(3.5,4.5)B.Max(3.5,4)C.Maxdouble(3.5,4.5)D.Maxdouble(3.5,4)3
2、.下列函数中对调用它的函数没有起到任何作用的是( )。(分数:2.00)A.void f1(double B.double f2(double x)return x-1.5;C.void f3(double x)-x;D.double f4(double *x)-*x; return*x;4.下列有关继承和派生的叙述中,正确的是( )。(分数:2.00)A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类5.以下程序段的输出结果是( )。i
3、nt x = 5;do coutx-end1;while(!x);(分数:2.00)A.5B.无任何输出C.4D.陷入死循环6.假定 MyClass 为一个类,则该类的拷贝构造函数的声明语句为 ( )。(分数:2.00)A.MyClassint main()cout.fill(*);coutleftsetw(4)123 “OK“end1;return 0;执行这个程序的输出结果是( )。(分数:2.00)A.123*OKB.123*OK*C.*123OKD.*123*OK8.下面关于友元函数的叙述中,不正确的是( )。(分数:2.00)A.友元函数提供了类之间数据共享的一个途径B.一个友元函数
4、可以访问任何类的任何成员C.友元函数破坏了数据的封装D.友元函数增加了程序设计的灵活性9.下面是关于 ios 类的叙述,正确的是( )。(分数:2.00)A.它是 istream 类和 ostream 类的虚基类B.它只是 istream 类的虚基类C.它只是 ostream 类的虚基类D.它是 iostream 类的虚基类10.类模板 templateclass Tclass x.,其中,友元函数 f 对特定类型 T(如 int),使函数 f(xint);成为 xint模板类的友元,则其说明为( )。(分数:2.00)A.friend void f();B.friend void f(xT)
5、;C.friend void A: f()D.friend void CD: f(xT);11.对如下二叉树(分数:2.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA12.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )。(分数:2.00)A.硬件资源B.通信资源C.支持软件D.辅助资源13.关于虚函数下面说的正确的是( )。(分数:2.00)A.若在重定义虚函数时使用了 virtual,则该重定义函数还是虚函数B.虚函数不能声明为友元C.子类必须重定义父类的虚函数D.虚函数不能是 static 的14.对下列程序段的描述正确的是( )。#includei
6、ostream.hint Fun(int, int);void main();coutFun(5,50)end1;int Fun(int x, int y)return x*x+ y*y;(分数:2.00)A.该函数定义正确,但函数调用方式错误B.该函数调用方式正确,但函数定义错误C.该函数定义和调用方式都正确D.该函数定义和调用方式都错误15.在长度为 64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为( )。(分数:2.00)A.63B.64C.6D.716.关于 swish 语句的说明中,错误的是( )。(分数:2.00)A.default 语句是可确省的B.各个分支中的 br
7、eak 语句起着退出 switch 语句的作用C.swish 结构不可以嵌套D.每个 case 语句中不必用,而整体的 switch 结构一定要写一对花括号17.下列说法中错误的是( )。(分数:2.00)A.公有继承时基类中的 public 成员在派生类中仍是 public 成员B.私有继承时基类中的 protected 成员在派生类中仍是 protected 成员C.私有继承时基类中的 public 成员在派生类中是 private 成员D.保护继承时基类中的 public 成员在派生类中是 protected 成员18.编制一个好的程序首先要确保它的正确性和可靠性,还应强调良好的编程风格
8、。在选择标识符的名字时应考虑( )。(分数:2.00)A.名字长度越短越好,以减少源程序的输入量B.多个变量共用一个名字,以减少变量名的数目C.选择含义明确的名字,以正确提示所代表的实体D.尽量用关键字作名字,以使名字标准化19.有如下类声明:class XA int x;public:XA(int n) x=n;class XB: public XAint y;public:XB(int a, int b);在构造函数朋的下列定义中,正确的是( )。(分数:2.00)A.XB:XB(int a,int b): x(a),y(b)B.XB:XB (int a,int b):XA(a),y(b)
9、C.XB:XB(int a,int b): x(a),XB(b)D.XB:XB(int a,int b):XA(a),XB(b)20.在设计程序时,应采纳的原则之一是( )。(分数:2.00)A.不限制 goto 语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解21.在 C+中,打开一个文件,就是将这个文件与一个( )建立关联,关闭一个文件,就是取消这种关联。(分数:2.00)A.类B.流C.对象D.结构22.有以下程序:#include iostreamusing namespace std;class sampleprivate:int x;static int
10、y;public:sample(int a);static void print(sample s);sample: sample(int a)x=a;y+=x;void sample: print(sample s)cout“x=“s. x“,y=“yend1;int sample: y=0;int main()sample s1(10);sample s2(20);sample: print(s2);return 0;程序运行后的输出结果是( )。(分数:2.00)A.x=10,y=20B.x=20,y=30C.x=30,y=20D.x=30,y=3023.语句 ofstream f (“
11、SALARY.DAT“,ios_ base: app);的功能是建立流对象 f,并试图打开文件 SALARY.DAT 与 f 关联,而且( )。(分数:2.00)A.若文件存在,将其置为空文件:若文件不存在,打开失败B.若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件C.若文件存在,将文件指针定位于文件首;若文件不存在,打开失败D.若文件存在,打开失败:若文件不存在,建立一个新文件24.如果表达式 y*x+中,“”是作为成员函数重载运算符,“+”是作为友元函数重的运算符,采用运算符函数调用格式,该表达式还可表示为( )。(分数:2.00)A.operator+(0)operat
12、or*(y)B.openrator*(x.operator+(0),y)C.operator*(openrator+(x,0)D.operator*(operator+(x,0),y)25.如果表达式-x/y 中的“-”和“/”都是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示( )。(分数:2.00)A.operator/(x. operator-(),y)B.operator/(operator-(x),y)C.operator-().operator/(y)D.operator/(operator-(x)26.有如下程序#include iostream#includ
13、e iomanipusing namespace std;class MyClass public:MyClass() coutA; MyClass(char c) coutc; MyClass() coutB; ;int main() MyClass p1,*p2;p2=new MyClass(X);delete p2;return 0;执行这个程序屏幕上将显示输出( )。(分数:2.00)A.ABXB.ABXBC.AXBD.AXBB27.有如下类定义:class Pointint x_, y_;public:Point(): x_(0), y_(0) Point(int x, int y
14、=0): x_(x), y_(y) 若执行语句Point a(2),b3, *c4;则 Point 类的构造函数被调用的次数是( )。(分数:2.00)A.2 次B.3 次C.4 次D.5 次28.下列描述中正确的是( )。(分数:2.00)A.程序就是软件B.软件开发不受计算机系统的限制C.软件既是逻辑实体,又是物理实体D.软件是程序、数据与相关文档的集合29.下面程序的运行结果是( )。#include iostream.hvoid main()int x=10, y=A;x%=y+ 1;coutxend1;(分数:2.00)A.0B.1C.2D.330.下列关于输入流类成员函数 getl
15、ine()的描述中,错误的是( )。(分数:2.00)A.该函数是用来读取键盘输入的字符串的B.该函数读取的字符串长度是受限制的C.该函数读取字符串时,遇到终止符便停止D.该函数读取字符串时,可以包含空格31.在数据库系统中,把具有以下两个特征的模型称为网状模型。允许有一个以上的结点没有双亲有且仅有一个结点无双亲根以外的结点有且仅有一个双亲一个结点可以有多个双亲以下各项组合中符合题意的是( )。(分数:2.00)A.和B.和C.和D.和32.有如下程序:#includeiostream.hvoid main()int x=1,a=0,b=0;switch (x)Case 0: b+;Case
16、1: a+;Case 2: a+; b+;cout“a=“a“,“b=“ b;该程序的输出结果是( )。(分数:2.00)A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=233.友元运算符 obj1obj2 被 C+编译器解释为( )。(分数:2.00)A.operator(obj1,obj2)B.(obj1,obj2)C.obj2.operator(obj1)D.obj1.operator(obj2)34.从工程管理角度,软件设计一般分为两步完成,它们是( )。(分数:2.00)A.概要设计与详细设计B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计
17、35.下列叙述中正确的是( )。(分数:2.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对二、填空题(总题数:15,分数:30.00)36.对长度为 10 的线性表进行冒泡排序,最坏情况下需要比较的次数为 【1】 。(分数:2.00)填空项 1:_37.在树中,度为零的结点称为 【2】 。(分数:2.00)填空项 1:_38.按“先进先出”原则组织数据的数据结构是 【3】 。(分数:2.00)填空项 1:_39.数据结构分为线性结构和非线性结构,线性表、栈和队列都属于
18、 【4】 。(分数:2.00)填空项 1:_40.冒泡排序算法在最好的情况下的元素交换次数为 【5】 。(分数:2.00)填空项 1:_41.若有整型变量 x=2,则表达式 x2 的结果是 【6】 。(分数:2.00)填空项 1:_42.重载的运算符仍然保持其原来的操作数个数、优先级和 【7】 不变。(分数:2.00)填空项 1:_43.C+在重载运算中,如用成员函数重载一元运算符参数表中需要 【8】 个参数,如用友元函数重载一元运算符参数表中需要 1 个参数。(分数:2.00)填空项 1:_44.若有以下程序:#include iostreamusing namespace std;clas
19、s Basepublic:void who() cout“Base“end1;class Derivedl: public Basepublic:void who() cout“Derived“end1; ;int main()Base *p;Derived1 obj1;p=p-who();return 0;则该程序运行后的输出结果是 【9】 。(分数:2.00)填空项 1:_45.如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的 【10】 函数。(分数:2.00)填空项 1:_46.类是一个支持集成的抽象数据类型,而对象是类的 【11】 。(分数:2.00)填空项 1:_
20、47.下列程序的输出结果是 【12】 。#include iostreamusing namespace std;int main()int i=5;int r=7;coutiend1;return 0;(分数:2.00)填空项 1:_48.写出下列程序的运行结果 【13】 。#include iostream.h.#include fstream.h#include stdlib.hvoid main()fstream outfile, infile;outfile.open(“data.clat“, ios: out);if(!outfile)cout“Cant open the file
21、.“end1;abort();outfile“ 1234567890“end1;outfile“aaaaaaaaa“end1;outfile“*“end1;outfile.close();infile.open(“data. dat “, ios: in);if(!infile)cout“Cant open the file.“end1;abort();char line80;int I=0;while(!infile. eof()I+;infile.getline(line, sizeof(line);coutI“:“lineend1;infile.close();(分数:2.00)填空项
22、1:_49.在下面程序的横线处填上适当的内容,使程序执行后的输出结果为 ABCD。#include iostreamusing namespace std;class Apublic: A() coutA; ;class B: 【14】 public: B()coutB;class C: virtual public Apublic: C()coutC;class D:public B, public Cpublic: D() coutD; ;void main() D obj;(分数:2.00)填空项 1:_50.下列程序的输出结果是 【15】 。#include iostreamusing
23、 namespace std;class A int a;public:A():a(9)virtual void print() const couta; ;class B: public A char b;public:B()b=S;void print() const cout b;void show(A int main()A d1,*p;B d2;p=dl1.print();d2.print();p-print();show(d1);show(d2);return 0;(分数:2.00)填空项 1:_二级 C+笔试-292 答案解析(总分:100.00,做题时间:90 分钟)一、选择题
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 292 答案 解析 DOC
