【计算机类职业资格】二级C++笔试-370及答案解析.doc
《【计算机类职业资格】二级C++笔试-370及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-370及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-370 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.关于类模板,下列表述不正确的是(分数:2.00)A.用类模板定义一个对象时,不能省略实参B.类模板只能有虚拟类型参数C.类模板本身在编译中不会生成任何代码D.类模板的成员函数都是模板函数2.下面不属于软件设计原则的是(分数:2.00)A.抽象B.模块化C.自底向上D.信息隐蔽3.有如下函数模板定义:templatetypename T1,typename T2,typename T3T2 plus T1 t1,T3 t3)return t1+t3;则以下调用中正确是(分
2、数:2.00)A.plus(3,5L);B.plus(3,5L);C.plusint(3,5L);D.plusint,double(3,5L);4.下列叙述中正确的是(分数:2.00)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构5.下列打开文件的表达式中,错误的是(分数:2.00)A.ofstream ofile;ofileopen(“C:/vc/abc.txt“,ios:binary);B.fstream iofile;iofileopen(“abc.txt“,ios:ate);C.ifstream ifile (“C:/vc /abc.txt“)
3、;D.cout.open(“C:/vc/abc.txt“,ios:binary);6.设有以下程序段:int a5=0,*p,*q;p=a;q=a;则下列选项中,合法的运算是(分数:2.00)A.p+qB.p-qC.p*qD.Pq7.若执行语句:coutsetfill(*)setw(10)123“OK“end1 后将输出(分数:2.00)A.*1230KB.123*OKC.*123*OKD.123*OK*8.用树形结构来表示实体之间联系的模型称为(分数:2.00)A.关系模型B.层次模型C.网状模型D.数据模型9.下列叙述中正确的是(分数:2.00)A.黑箱(盒)测试方法完全不考虑程序的内部结
4、构和内部特征B.黑箱(盒)测试方法主要考虑程序的内部结构和内部特征C.白箱(盒)测试不考虑程序内部的逻辑结构D.上述三种说法都不对10.有以下程序:#includeiostreamusing namespace std;class sampleprivate:int n;public:sample()sample(int m)n=m;sample add(sample s1,sample s2)this-n=s1.n+s2.n;return(*this);void disp()cout“n“nend1;int main()sample s1(10),s2(5),s3;s3add(s1,s2);
5、s3disp();return 0;程序运行后,输出的结果是(分数:2.00)A.n=10B.n=5C.n=20D.n=1511.以下程序执行后的输出结果是#includeiostreamusing namcspace std;void try(int,int,int,int);int main()int x,y,z,r;x=1;y=2;try(x,y,z,r);coutrend1;return 0;void try(int x,int y, int z,int r)z = x+y;x = x*x;y = y*y;r = z+x+y;(分数:2.00)A.18B.9C.10D.不确定12.下列
6、对派生类的描述中,错误的是(分数:2.00)A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类中保持不变13.设树 T 的度为 4,其中度为 1,2,3,4 的结点个数分别为 4,2,1,1。则 T 中的叶子结点数为(分数:2.00)A.5B.6C.7D.814.假定 MyClass 为一个类,则该类的拷贝构造函数的声明语句为(分数:2.00)A.MyClassint s=O;class samplestatic int n;public:sample(int i)n=i;sta
7、tic void add()s+=n;int sample:s=O;int main()sample a(2),b(5);sample: :add();coutsend1;return 0;程序运行后的输出结果是(分数:2.00)A.2B.5C.7D.331.下面关于虚函数的描述中正确的是(分数:2.00)A.虚函数是一个静态成员函数B.虚函数是一个非成员函数C.虚函数既可以在函数说明时定义,也可以在函数实现时定义D.派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型32.下列叙述中正确的是(分数:2.00)A.数据的逻辑结构与存储结构必定一一对应B.由于计算机存储空间是向量式的存储结
8、构,因此,数据的存储结构一定是线性结构C.程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构D.以上三种说法都不对33.下列类的定义中,有( ) 处语法错误。class Basepublic:Base()Base(int i)data=i;private:int data;class Derive: public Basepublic:Derive(): Base(O) Derive(int x)d=x;void setvalue(int i)data=i;private:d;(分数:2.00)A.1B.2C.3D.434.若有以下程序:#include iostreamu
9、sing namespace std;class Basepublic:Base()x=0;int x;class Derivedl: virtual public Basepublic:Derived1()x=10;class Derived2: virtual public Base publiciDerived2()x=20;class Derived :public Derived1,protected Derived2 ;int main()Derived obj;coutobj.xend1;return 0;该程序运行后的输出结果是(分数:2.00)A.20B.30C.10D.03
10、5.如果表达式 y*x+中,“*”是作为成员函数重载的运算符,“+”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为(分数:2.00)A.operator+(0).operator*(y);B.operator*(x.operator+(0),y);C.operator*(operator+(x,O)D.operator*(operator+(x,0),y)二、填空题(总题数:14,分数:30.00)36.在一个容量为 25 的循环队列中,若头指针 front=16,尾指针 rear=9,则该循环队列中共有 【1】 个元素。(分数:2.00)填空项 1:_37.在面向对象
11、方法中,属性与操作相似的一组对象称为 【2】 。(分数:2.00)填空项 1:_38.Jackson 方法是一种面向 【3】 的结构化方法。(分数:2.00)填空项 1:_39.一个项目具有一个项目主管,一个项目主管可管理多个项目。则实体集“项目主管”与实体集“项目”的联系属于 【4】 的联系。(分数:2.00)填空项 1:_40.数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,所以,基于逻辑结构的应用程序不必修改,称为 【5】 。(分数:2.00)填空项 1:_41.假设 a、b 均是整型变量,则表达式 a=2,b=5,a+,b+,a+b 值为 【6】 。(
12、分数:2.00)填空项 1:_42.设在主函数中有以下定义和函数调用语句,且 fun()函数为 void 类型,请写出 fun()函数的首部 【7】 。int main()double s1022;int n;fun(s);return 0;(分数:2.00)填空项 1:_43.若有如下程序段:#includeiostreamusing namespace std;int main()char*p=“abcdefgh“,*r;long*q;q=(long*)p;q+;r=(char*)q; coutrendl;return 0;该程序的输出结果是 【8】 。(分数:2.00)填空项 1:_44
13、.表达式 c3=c1operator+(c2)或 c3=operator+(c1,c2)还可以表示为 【9】 。(分数:2.00)填空项 1:_45.下列程序的输出结果是 【10】 。#includeiostreamusing namespace std;void fun (int y=2;try(x,y,z,r);coutrend1;return 0;void try(int x,int y, int z,int r)z = x+y;x = x*x;y = y*y;r = z+x+y;(分数:2.00)A.18B.9C.10D.不确定 解析:解析 本题考核函数调用(参数的传递)。本题常见的错
14、误解答是:把 x=1,y=2 代入到函数 try 中,逐步计算出 r=8。最后得到 r 的输出值是 8。以下是正确解答,根据程序逐步分析:程序中定义了一个名为 try 的 void 型函数,即函数 try 没有任何返回值。而 try 函数在 main 函数中是以一条独立语句的方式被调用的,且 main 函数最后输出变量 r 的值。但在 main 函数中,并没有对变量 r 赋值。在 C语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以虽然在函数 try 中,r 的值为 8,但它并不能传递给实参,当然最终的输出肯定是不确定的随
15、机数了。12.下列对派生类的描述中,错误的是(分数:2.00)A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类中保持不变 解析:解析 本题考核继承与派生。基类与,派生类的关系为:基类是对派生类的抽象,派生类是对基类的具体化。基类抽取了它的派生类的公共特征,而派生类通过增加信息将抽象的基类变为某种有用的类型,派生类是基类定义的延续。派生类是基类的组合。公有派生类的对象可以作为基类的对象处理。由此可知 A) 、B) 和 C) 选项都是正确的。而在继承中,采用不同的继承方式,将限制派
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 370 答案 解析 DOC
