【计算机类职业资格】二级C++笔试307及答案解析.doc
《【计算机类职业资格】二级C++笔试307及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试307及答案解析.doc(13页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 307 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列叙述中错误的是( )。(分数:2.00)A.一个函数中可以有多条 return 语句B.调用函数必须在一条独立的语句中完成C.函数中通过 return 语句传递函数值D.主函数名 main 也可以带有形参2.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态;其中只能用于检测输入操作的函数的函数名是( )。(分数:2.00)A.failB.eofC.badD.good3.下列对于软件测试的描述中正确的是( )。(分数:2.00)A.软件测
2、试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则4.下列符号中可以用作 C+标识符的是( )。(分数:2.00)A._radiusB.foobarC.elseD.3room5.设有基类定义:class Cbase private:int a;protected. int b;public:int c;派生类采用何种继承方式可以使成员变量 b 成为自己的私有成员( )。(分数:2.00)A.私有继承B.保护继承C.公有继承D.私有、保护、公有均可6.在软件生存周期中,能准确地确定软件系统必须做什
3、么和必须具备哪些功能的阶段是( )。(分数:2.00)A.概要设计B.详细设计C.可行性分析D.需求分析7.下列语句段落将输出字符*的个数为( )。#includeiostreamhVoid main()int i=100;while(1) i-; if(i=0)break; cout*;(分数:2.00)A.98 个B.99 个C.100 个D.101 个8.下列关于栈的描述中错误的是( )。(分数:2.00)A.栈是先进后出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针9.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p
4、=a;则数值为 9 的表达式是( )。(分数:2.00)A.*p+9B.*(p+8)C.*p+:9D.p+810.下列虚基类的声明中,正确的是( )。(分数:2.00)A.class virtual B: public AB.virtual class B: public AC.class B: public A virtualD.class B: virtual public A11.模板对类型的参数化提供了很好的支持,因此( )。(分数:2.00)A.类模板的主要作用是生成抽象类B.类模板实例化时,编译器将根据给出的模板实参生成一个类C.在类模板中的数据成员都具有同样类型D.类模板中的成员
5、函数都没有返回值12.假定 MyClass 为一个类,则执行 myClass a,b(2),*p;语句时,自动调用该类构造函数( )次。(分数:2.00)A.2B.3C.4D.513.类模板的使用实际上是将类模板实例化成一个具体的( )。(分数:2.00)A.类B.对象C.函数D.模板类14.下面程式程序的执行结果是( )。#includeiostream.hvoidmain()int *p, r;p=new int;*p=20;r=sizeof(*p);coutrend1;delete p;(分数:2.00)A.程序错误B.内存为 20 地址的大小C.20D.415.若有以下程序:#incl
6、ude iostreamusing namespace std;class Aprivate: int x;public: int z; void setx(int i) x=i; int getx() return x; ;class B: public Aprivate: int m;public: int p; void setvalue(int a, int b, int c) setx(a); z=b; m=c; void display() coutgetx()“,“z“,“mend1; ;int main() B obj; obj.setvalue(2,3,4); obj.dis
7、play(); return 0;程序运行以后的输出结果是( )。(分数:2.00)A.产生语法错误B.2,3,4C.2,2,2D.4,3,216.在面向对象的程序设计中,下列叙述中错误的是( )。(分数:2.00)A.任何一个对象构成一个独立的模块B.一个对象不是独立存在的实体,各个对象之间有关联,相互依赖C.下一层次的对象可以继承上一层次对象的某些属性D.上述三种说法都正确17.下列关于模板的叙述中,错误的是( )。(分数:2.00)A.模板声明中的第一个符号总是关键字 templateB.在模板声明中用和括起来的部分是模板的形参表C.类模板不能有数据成员D.在一定条件下函数模板的实参可以
8、省略18.有以下程序#include iostreamusing namespace std;class sampleprivate: int x;public: sample(int a) x=a; friend double square(sample s);double square(sample s) return s. x*s. x;int main() sample s1(20),s2(30); coutsquare(s2)end1; return 0;执行结果是( )。(分数:2.00)A.20B.30C.900D.40019.以下程序的输出结果是( )。#include ios
9、tream.hvoid main() int a=0,i; for(i=1 ;i5;i+) switch(i) case 0: case 3: a+ =2; case 1: case 2: a+ =3; default: a+ =5; coutaend1; return;(分数:2.00)A.31B.13C.10D.2020.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( )。(分数:2.00)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对21.对于某个函数调用,不给出调用函数的声明的情况是( )。(分数:2.
10、00)A.被调用函数是无参函数B.被调用函数是无返回值的函数C.函数的定义在调用处之前D.函数的定义有别的程序文件中22.下列关于 E-R 图的描述中正确的是( )。(分数:2.00)A.E-R 图只能表示实体之间的联系B.E-R 图只能表示实体和实体之间的联系C.E-R 图只能表示实体和属性D.E-R 图能表示实体、属性和实体之间的联系23.( )使一个函数可以定义成对许多不同数据类型完成同一个任务。(分数:2.00)A.函数模板B.重载函数C.递归函数D.模板函数24.从数据库存的整体结构看,数据库存系统采用的数据模型有( )。(分数:2.00)A.网状模型、链状模型和层次模型B.层次模型
11、、网状模型和环状模型C.层次模型、网状模型和关系模型D.链状模型、关系模型和层次模型25.若有以下定义:int a12=1,2,3,4,5,6,7,8,9,10,11,12;char c=a, d, g;则下列表达式中,结果为 4 的是( )。(分数:2.00)A.ag-cB.a 4C.ad-cD.ad-c26.数据库设计的根本目标是要解决( )。(分数:2.00)A.数据共享问题B.数据安全问题C.大量数据存储问题D.简化数据维护27.有如下类定义;class AAint a;public:int getRef()const return /int getValue()const retur
12、n a; / void set(int n)const a=n; /friend void show(AA aa)const couta; )/;其中的四个函数定义中正确的是( )。(分数:2.00)A.B.C.D.28.在下列函数原型中,可以作为类 AA 构造函数的是( )。(分数:2.00)A.void AA(in;B.int AA();C.AA(inconst;D.AA (in;29.有如下的运算符重载函数定义:double operator+(int i,int k)return double (i+ k);但定义有错误,对这个错误最准确的描述是( )。(分数:2.00)A.“+”只能
13、作为成员函数重载,而这里的“+”是作为非成员函数重载的B.两个 int 型参数的和也应该是 int 型,而这里将“+”的返回类型声明为 doubleC.没有将运算符重载函数声明为某个类的友元D.C+已经提供了求两个 int 型数据之和的运算符+,不能再定义同样的运算符30.关于二义性的描述错误的是( )。(分数:2.00)A.一个子类的两个父类中都有某个同名成员,在子类中对该成员访问可能出现二义性B.解决二义性可以用对成员名的限定法C.父类和子类中同时出现同名函数,也可能存在二义性D.一个子类是从两个父类派生出来的,而这两个父类只有一个共同的父类,对该父类成员进行访问时,可能出现二义性31.对
14、长度为 n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )。(分数:2.00)A.10g2nB.n/2C.nD.n+132.下列程序的运行结果是( )。#includeiostream.hvoid fun(int *a, int *b) int *k; k=a; a=b; b=k;void main()int a=2OO4,b=9,*x=fun(x, y);couta“ “bend1;(分数:2.00)A.20049B.92004C.00D.编译时出错33.有如下程序:#include iostreamusing namespace std;class Base private:
15、void fun1() const cout “fun1“; protected: void fun2() eonst cout “fun2“; public: void tim3() const cout “fun3“; ; class Derived: protected Base public: void fun4() const cout “fun4“; ;int main()Derived obj;obj.fun1();/ obj.fun2();/ obj.fun3();/ obj.fun4();/ return 0;其中有语法错误的语句是( )。(分数:2.00)A.B.C.D.3
16、4.下列叙述中错误的是( )。(分数:2.00)A.在数据库设计的过程中,需求分析阶段必须考虑具体的计算机系统B.在数据库设计的过程中,概念结构设计与具体的数据库管理系统有关C.在数据库设计的过程中,逻辑结构设计与具体的数据库管理系统有关D.在数据库设计的过程中,物理结构设计依赖于具体的计算机系统35.若有如下程序:#include iostreamusing namespaces std;int s=0;class samplestatic int n;public:sample(int i) n=i;static void add() s+=n;int sample: n=0;int ma
17、in()sample a(2),b(5);sample: add();coutsend1;return 0;程序运行后的输出结果是( )。(分数:2.00)A.2B.5C.7D.3二、B填空题/B(总题数:15,分数:30.00)36.在计算机软件系统的体系结构中,数据库管理系统位于用户和U 【1】 /U之间。(分数:2.00)填空项 1:_37.数据的组织和存储会直接影响算法的实现方式和U 【2】 /U。(分数:2.00)填空项 1:_38.计算机技术中,为解决一个特定问题而采取的特定的有限的步骤称为U 【3】 /U。(分数:2.00)填空项 1:_39.按数据流的类型,结构化设计方法有两种
18、设计策略,它们是U 【4】 /U和事务分析设计。(分数:2.00)填空项 1:_40.算法运行过程中所耗费的时间称为算法的U 【5】 /U。(分数:2.00)填空项 1:_41.若有定义语句:int*a,b;,则变量 b 的数据类型是U 【6】 /U。(分数:2.00)填空项 1:_42.设在主函数中有以下定义和函数调用语句,且 fun()函数为 void 类型,请写出 fun()函数的首部U 【7】 /U。 int main() double s1022; int n; . fun(s); . return0; (分数:2.00)填空项 1:_43.以下程序的运行结果是U 【8】 /U。 #
19、includeiostream.h void main() bool t1=8,t2=0,t3=1; coutt1/tt2/tt3end1; (分数:2.00)填空项 1:_44.类 istream 的成员函数 get 从指定流中读取一个字符,成员函数U 【9】 /U和 read 从指定流中读取多个字符。(分数:2.00)填空项 1:_45.若有定义语句:int a=3,b=2,c=1;,则表达式 ab ? a:b 的值是U 【10】 /U。(分数:2.00)填空项 1:_46.对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用U 【11】 /U的构造函数,再执行调用子对象类的
20、构造函数,最后执行派生类的构造函数体中的内容。(分数:2.00)填空项 1:_47.定义在类内部的函数被类默认为U 【12】 /U,在类外部每次调用该函数时,定义的函数代码会在调用函数位置展开。(分数:2.00)填空项 1:_48.下面是复数类 complex 的定义,其中重载的运算符“+”的功能是返回一个新的复数对象,其实部等于两个操作对象实部之和,其虚部等于两个操作对象虚部之和;请补充完整: class complex double real; /实部 double imag; /虚部 public: complex( double r, double i):real(r),imag(i)
21、 complex operator + (complex a) return complex(U 【13】 /U); ;(分数:2.00)填空项 1:_49.以下函数模板 max()的功能是:返回数组 a 中最大元素的值。请将横线处缺失部分补充完整。 templatetypename TT max (T a, int n) T m=a0; for (int i=1;in;i+) if (aim)U 【14】 /U; return m; (分数:2.00)填空项 1:_50.下面是一个栈类的模板,其中 push 函数将元素 i 压入栈顶,pop 函数弹出栈顶元素。栈初始为空,top 值为 0,栈
22、顶元素在 stacktop-1中,在下面横线处填上适当语句,完成栈类模板的定义。 template class T class Tstack enum size= 1000 ; T stacksize; int top; public: Tstack():top(0) void push(const T T pop() if(top=0)exit(1); /栈空时终止运行 returnU 【15】 /U; ;(分数:2.00)填空项 1:_二级 C+笔试 307 答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列叙述中错误的是( )。
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 307 答案 解析 DOC
