【计算机类职业资格】二级C++笔试370及答案解析.doc
《【计算机类职业资格】二级C++笔试370及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试370及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 370 及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.有如下类声明: class Foo int bar; ; 则 Foo 类的成员 bar 是(分数:2.00)A.公有数据成员B.公有成员函数C.私有数据成员D.私有成员函数2.在下面的类定义中,横线处应填入的内容是 class Fred public: void print () coutdataend1; void setData (double D) data=d; static int count; private: double data; ;_count=
2、0; /静态数据成员的定义(分数:2.00)A.intB.static intC.int Fred:D.static int Fred:3.下列关于运行符重载的描述中,正确的是(分数:2.00)A.运算符重载可以改变操作数的个数B.运算符重载可以改变操作数的优先级C.运算符重载可以改变运算符的结合性D.运算符重载可以使运算符实现特殊功能4.有如下程序:#include iostreamusing namespace std:class Testpublic: Test() n+=2; Test() n-=3; ; static int getNum() return n;privaue: st
3、atic int n:;int Test:n=1;int main() Test* p=new Test; delete p; cout“n=“Test:getNum()end1; return 0; 执行后的输出结果是(分数:2.00)A.n=0B.n=1C.n=2D.n=35.有如下程序: #include iostream using namespace std; int main() cout.fill(*); cout.width(6); cout.fill(#); cout123end1; return 0; 执行后的输出结果是(分数:2.00)A.#123B.123#C.*123
4、D.123*6.下列叙述中正确的是(分数:2.00)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构7.下面关于虚函数的描述中正确的是(分数:2.00)A.虚函数是一个静态成员函数B.虚函数是一个非成员函数C.虚函数既可以在函数说明时定义,也可以在函数实现时定义D.派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型8.设有以下程序段: int a5=0,*p,*q; p=a; q=a; 则下列选项中,合法的运算是(分数:2.00)A.p*qB.p-qC.p*qD.p%q9.下列叙述中正确的是(分数:2.00)A.软件交付使用后还需要进行维护B.软
5、件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令10.在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(分数:2.00)A.概要设计B.详细设计C.可行性分析D.需求分析11.如果表达式 y*x+中,“*”是作为成员函数重载的运算符,“+”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为(分数:2.00)A.operator+(0).operator*(;B.operator*(operator+(0),;C.operator*(operator+(x,0)D.operator*(opera
6、tor+(x,0),12.在一个类体的下列声明中,下确的纯虚函数声明星(分数:2.00)A.virtual voidvf0:0;B.void vf(in=0;C.virtual int vf(in;D.virtual void vf(in 13.下列叙述中正确的是(分数:2.00)A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制结构C.程序执行的效率只取决于所处理的数据量D.以上三种说法都不对15.有如下语句序列: int k=0; dok+=5; cout$; while(k19); while(k-00)cout*; 执行上面的语句序列输出字符$和*的个数分别
7、是(分数:2.00)A.4 和 20B.55 和 20C.4 和 21D.5 和 2116.有以下程序:#include iostreamusing namespace std;class Apublic: A(int i,int j) a=1; b=j; void move (int x,int y) a+=x; b+=y; void show() couta“,“bend1 private: int a,b; ; class B : private A public: B(int i,int 3):A (i,j) void fun() move (3,5); void f1() A:sho
8、w(); ; int main() B d(3,4); d.fun(); d.f1(); return 0; 程序执行后的输出结果是(分数:2.00)A.3,4B.6,8C.6,9D.4,317.下列叙述中错误的是(分数:2.00)A.在数据库设计的过程中,需求分析阶段必须考虑具体的计算机系统B.在数据库设计的过程中,概念结构设计与具体的数据库管理系统有关C.在数据库设计的过程中,逻辑结构设计与具体的数据库管理系统有关D.在数据库设计的过程中,物理结构设计依赖于具体的计算机系统18.在 C+中,实现封装性需借助于(分数:2.00)A.枚举B.类C.数组D.函数19.在表达式 x+y*z 中,+
9、是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是 ,(分数:2.00)A.operator+有两个参数,operator*有两个参数B.operator+有两个参数,operator*有一个参数C.operator+有一个参数,operator*有两个参数D.operator+有一个参数,operator*有一个参数20.有如下函数模板声明: 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.
10、Maxdouble(3.5,4.5)D.Maxdouble(3.5,4)21.下列叙述中正确的是(分数:2.00)A.一个逻辑数据结构只能有一种存储结构B.数据的逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率22.一棵二叉树中共有 70 个叶子结点与 80 个度为 1 的结点,则该二叉树中的总结点数为(分数:2.00)A.221B.219C.231D.22923.下列叙述中错误的是(分数:2.00)A.一种数据的逻辑结构可以有多种存储结构B.数据的存储
11、结构与数据处理的效率无关C.数据的存储结构与数据处理的效率密切相关D.数据的存储结构在计算机中所占的中间不一定是连续的24.有如下程序: #include iostream.h using namespace std; class Stack public: Stack (unsigned n=10):size (n) rep_=new int size; top=0; Stack (stack for (int i=0;isize;i+ rip_i-s.rep_i; top=s.top; Stack() deleterep_; void poush(int a) rep_topj=a; to
12、p+; int pep() -top; return rep_top; bool isEmpty() cons5 return Top =0; private: int*rep_; unsigned size, top; ; int main() Stack s1; for(int i=1;i5;i+) s1.push(i); Stack s2(s1); for(i=1;i3;i+ couts2.pop(),; s2.push(6); s1.push(7); while(!s2.isEmpty() couts2.pop(),; return 0; 执行上面程序的输出是(分数:2.00)A.4,
13、3,2,1,B.4,3,6,7,2,1,C.4,3,6,2,1,D.1,2,3,4,25.面向对象程序设计将数据和什么放在一起,作为一个相互依存、不可分割的整体来处理?(分数:2.00)A.对数据的操作B.信息C.数据隐藏D.数据抽象27.在公有派生的情况下,派生类中定义的成员函数只能访问原基类的(分数:2.00)A.公有成员和私有成员B.私有成员和保护成员C.公有成员和保护成员D.私有成员、保护成员和公有成员28.下面关于 C+流的叙述中,正确的是(分数:2.00)A.cin 是一个输入流对象B.可以用 ifstream 定义一个输出流对象C.执行语句序列 char *y=“PQMN“; c
14、outy;将输出字符串“PQMN“的地址D.执行语句序列 char x80;cigetline(x,80);时,若键入 Happy new year 则 x 中的字符串是“Happy“29.设有如下关系表: (分数:2.00)A.T=RSB.T=RSC.T=RSD.T=R/S30.在表达式 x-y 中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可表示为(分数:2.00)A.operator-(B.operator-(y,C.operator-(D.operator-(x,31.下列语句段将输出字符*的个数为 int i=100; while(
15、1) i-; if(i=0) break; cout*; (分数:2.00)A.98 个B.99 个C.100 个D.101 个32.下列对字符数组进行初始化的语句正确的是(分数:2.00)A.char a =“Hello“;B.char a=H,e,1,1,o);C.char a5=“Hello“;D.char a25=“Hello“, “World“;p33.在关系数据库中,用来表示实体之间联系的是(分数:2.00)A.树结构B.网结构C.线性表D.二维表34.下列虚基类的声明中正确的是(分数:2.00)A.class virtual B: public AB.virtual class
16、B: public AC.class B: public A virtualD.class B: virtual public A35.若语句: coutsetfill()setw(5)3141512setw(5)“OK!“; 是程序中第 1 个输出语句,则输出结果是(分数:2.00)A.3141512OK!B.31415120K!C.314150K!D.31415OK!二、B填空题/B(总题数:14,分数:28.00)36.某二叉树中度为 2 的结点有 18 个,则该二叉树中有 1 个叶子结点。(分数:2.00)填空项 1:_37.在面向对象方法中,类的实例称为 1 。(分数:2.00)填空
17、项 1:_38.软件生命周期包括 8 个阶段。为了使各时期的任务更明确,又可分为 3 个时期:软件定义期、软件开发期、软件维护期。编码和测试属于 1 期。(分数:2.00)填空项 1:_39.一棵二叉树第六层(根结点为第一层)的结点数最多为 1 个。(分数:2.00)填空项 1:_40.数据库系统中实现各种数据管理功能的核心软件称为 1。(分数:2.00)填空项 1:_41.设有定义语句:int a=12;,则表达式 a*=2+3 的运算结果是 1。(分数:2.00)填空项 1:_42.设在主函数中有以下定义和函数调用语句,且 fun()函数为 void 类型,请写出 fun()函数的首部_。
18、 int main() double s1022; int n: . fun (s): . return 0; (分数:2.00)填空项 1:_43.下列程序的输出结果是_。 #include iostream.h #include cstring.h using namespace std; void fun(const char*s,char int main ) char str =“ABCDE“; char ch=str1; fun(str,sh); coutCh; return 0; (分数:2.00)填空项 1:_44.请按下面注释的提示,将类 B 的构造函数定义补充完整。 cla
19、ssA int a; public: Aint aa=0) (a=aa; class B:public A int b; A c; public: /用 aa 初始化基类 A,用 aa+1 初始化类对象成员 c B(int aa): b=aa+2 ;(分数:2.00)填空项 1:_45.以下程序运行后的输出结果是_。 #include iostream #include string using namespace std; class Y; class X int x; char *strx; public: X(int a, char *str) x=a; strx=new charstr
20、len(str)+1 strcpy (strx,str); void show(Y ; class Y prlvate: int y; char *stry; public: Y(int b,char *str) y=b; stry=new charstrlen(str)+1; strcpy(stry,str); friend void X:show(Y ; void X:showY int main X a (10, “stringX“); Y b (20, “stringY“); a. show (b); renurn 0; (分数:2.00)填空项 1:_46.在下面横线上填上适当的语句
21、,完成程序。 #include iostream using namespace std; class Base int x: public: Base (int i)x=i; Base() ; class Derived : public Base public: _ /完成类 Derive 构造函数的定义 ; int main ( Derived Obi; return 0; 在横线外应填入的语句是_。(分数:2.00)填空项 1:_47.下面是用来计算 n 的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是) n!=n*(n-1)*.*2*1) unsigned fact(u
22、nsigned n) if (n =1) return 1; return_; (分数:2.00)填空项 1:_48.下列程序的输出结果是_。 #include iostream using namespace std; templatetypename T T fun(T a,T b) return (a=b)?a:b;) int main() coutfun(3, 6),fun(3.14F,6.28F) end1; return 0;(分数:2.00)填空项 1:_49.下面程序的输出是: *5.23 5.23* 请将下划线上遗漏的部分补充完整。 #include iostream #in
23、clude iomanip using namespace std: void main() double i=5.23; cout_setw(14)i couuend1_setw(14)i; (分数:2.00)填空项 1:_二级 C+笔试 370 答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.有如下类声明: class Foo int bar; ; 则 Foo 类的成员 bar 是(分数:2.00)A.公有数据成员B.公有成员函数C.私有数据成员 D.私有成员函数解析:解析 本题考核类的定义。在定义类的成员变量时,一般都会加上关键字来
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 370 答案 解析 DOC
