【计算机类职业资格】二级C++笔试-419及答案解析.doc
《【计算机类职业资格】二级C++笔试-419及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-419及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-419 及答案解析(总分:85.00,做题时间:90 分钟)一、选择题(总题数:35,分数:61.00)1.下列有关继承和派生的叙述中,正确的是A) 派生类不能访问基类的保护成员B) 作为虚基类的类不能被实例化C) 派生类应当向基类的构造函数传递参数D) 虚函数必须在派生类中重新实现(分数:2.00)A.B.C.D.2.是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。A) 模板 B) 类 C) 对象 D) 函数(分数:2.00)A.B.C.D.3.将 E-R图转换到关系模式时,实体与联系都可以表示成A) 属性 B) 关系 C) 键 D) 域(分数:2
2、.00)A.B.C.D.4.对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。A) 125 B) n/2 C) n D) n+1(分数:2.00)A.B.C.D.5.字面常量 42、4.2、42L 的数据类型分别是 A) long、double、int B) long、float、int C) int、double、long D) int、float、long(分数:2.00)A.B.C.D.6.下列成对的表达式中,运算符“/”的意义相同的一对是( )。A) 8/3和 8.0/3.0 B) 8/3.0和 8/3C) 8.0/3和 8/3 D) 8.0/3.0和 8.0/3(
3、分数:2.00)A.B.C.D.7.关系表中的每一横行称为一个A) 元组 B) 字段 C) 属性 D) 码(分数:1.00)A.B.C.D.8.下列运算符中不能在 C中重载的是A) ?: B) +C) - D) =(分数:1.00)A.B.C.D.9.下面的描述中,正确的是( )。A) virtual可以用来声明虚函数B) 含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类 C) 即使基类的构造函数没有参数,派生类也必须建立构造函数D) 静态数据成员可以通过成员初始化列表宋初始化(分数:1.00)A.B.C.D.10.下面对静态数据成员的描述中,正确的是( )。A) 静态数据成员可以在类体
4、内进行初始化B) 静态数据成员不可以通过类的对象调用C) 静态数据成员不能受 private(私有)控制符的作用D) 静态数据成员可以直接通过类名调用(分数:1.00)A.B.C.D.11.下列叙述中正确的是A)线性表是线性结构 B)栈与队列是非线性结构C)线性链表是非线性结构 D)二叉树是线性结构(分数:1.00)A.B.C.D.12.下列叙述中正确的是( )。A) 在面向对象的程序设计中,各个对象之间具有密切的联系B) 在面向对象的程序设计中,各个对象都是公用的C) 在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D) 上述三种说法都不对(分数:2.00)A.B.C.D.13.类
5、的析构函数的作用是A) 一般成员函数的初始化 B) 类的初始化C) 对象的初始化 D) 删除类创建的对象(分数:2.00)A.B.C.D.14.在最坏情况下,冒泡排序所需要的比较次数为A) n/2 B) (n+1)/2 C) n(n-1)/2 D) n(n+1)/2(分数:2.00)A.B.C.D.15.在 C语言中,不合法的实型数据是A) 0.123 B) 123e3 C) 2.1e3.5 D) 123.0(分数:2.00)A.B.C.D.16.下列关于运算符重载的描述中, _ 是正确的。A) 运算符重载可以改变操作数的个数B) 运算符重载可以改变优先级C) 运算符重载可以改变结合性D) 运
6、算符重载不可以改变语法结构(分数:2.00)A.B.C.D.17.下列叙述中正确的是A) 软件交付使用后还需要进行维护B) 软件一旦交付使用就不需要再进行维护C) 软件交付使用后其生命周期就结束D) 软件维护是指修复程序中被破坏的指令(分数:2.00)A.B.C.D.18.定义如下一维数组:int a5,*p;,则下列描述错误的是( )。A) 表达式 p=p+l是合法的B) 表达式 a=a+l是合法的C) 表达式 p-a是合法的 D) 表达式 a+2是合法的(分数:1.00)A.B.C.D.19.首先访问该结点,然后访问结点的左子树,最后访问结点的右子树,这种遍历方式称为( )。A) 前序遍历
7、 B) 中序遍历 C) 后序遍历 D) 顺序遍历(分数:2.00)A.B.C.D.20.下列说法正确的是A)内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B)内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C)类的内联函数必须在类体内定义D)类的内联函数必须在类体外通过加关键字 inline定义(分数:1.00)A.B.C.D.21.若有一个 MyClass类,则执行语句 MyClass a,b(2),*p;后,自动调用该类的构造函数 ( )次。A) 2 B) 3C) 4 D) 5(分数:1.00)A.B.C.D.22.数据库设计包括两个方面的设计内容,它们是( )。
8、A) 概念设计和逻辑设计 B) 模式设计和内模式设计C) 内模式设计和物理设计 D) 结构特性设计和行为特性设计(分数:2.00)A.B.C.D.23.以下叙述中正确的是_。A) 预处理命令行必须位于 C源程序的起始位置B) 在 C语言中,预处理命令行都以“#”开头C) 每个 C程序必须在开头包含预处理命令行:#includeD) C语言的预处理不能实现宏定义和条件编译的功能(分数:2.00)A.B.C.D.24.某类中有一个无参且无返回值的常成员函数 Show,则正确的 Show函数原型是A) const void Show( );B) void const Show( );C) void
9、Show( )const;D) void Show(const);(分数:2.00)A.B.C.D.25.关于 this指针的说法不正确的是( )。A) 不能在程序中修改 this指针B) this指针可以给其他指针赋值,但不能修改 this指针C) 静态成员函数中没有 this指针D) this指针可以被赋值(分数:2.00)A.B.C.D.26.执行语句序列ofstream outfile(“data.dat“);if(.)cout“ok“;else cout“fail“;后,如果文件打开成功,显示“ok”,否则显示“fail”。由此可知,上面 if语句的“.”处的表达式是( )。A) o
10、utfile.fail()或 outffle B) outfile.good()或!outfileC) outfile.good()或 outfile D) outfile.fail()或!outfile(分数:2.00)A.B.C.D.27.下列工具中为需求分析常用工具的是( )。A) PAD B) PFD C) NS D) DFD(分数:2.00)A.B.C.D.28.下面程序的运行结果为( )。#include iostreamusing namespace std;void main( ) for(int a =0,x =0; !x a + );cout a endl;A) 0 B)
11、1 C) 10 D) 11(分数:2.00)A.B.C.D.29.下列程序的输出结果为( )。#includeiostream.h)class TestClasspublic:TestClass()val+;static,int val;int TestClass:val0;void main()TestClass cs1;coutcsl.val“;TestClass cs2;TestClass cs3,cs4;coutcs2.valend1;A) 03 B) 13 C) 14 D) 24(分数:2.00)A.B.C.D.30.下列语句段输出字符*的个数为( )。int i=100;while
12、(1)i-;if(i=0) break;cout*;A) 101个 B) 100 个 C) 99 个 D) 98 个(分数:2.00)A.B.C.D.31.有如下类定义: class Foo public: Foo(int v):value(v) / Foo() / private: Foo( ) / int value=0; / ; 其中存在语法错误的行是 A) B) C) D) (分数:2.00)A.B.C.D.32.有如下程序:#include iostream#include iomanipusing namespace std;int main()cout.fill(*);coutl
13、eftsetw(4)123 “OK“end1;return 0;执行这个程序的输出结果是( )。A) 123*OK B) 123*OK* C) *123OK D) *123*OK(分数:2.00)A.B.C.D.33.编译时的多态性可以通过使用( )获得。A) 虚函数和指针 B) 重载函数 C) 虚函数和对象 D) 虚函数和引用(分数:2.00)A.B.C.D.34.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是A) 黑箱测试法 B) 白箱测试法 C) 错误推测法 D) 安装测试法(分数:1.00)A.B.C.D.35.关于数据库系统三级模式的说法,下列( )是
14、正确的。A) 外模式、概念模式、内模式都只有一个B) 外模式有多个,概念模式和内模式只有一个C) 外模式只有一个,概念模式和内模式有多个D) 3个模式中,只有概念模式才是真正存在的(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:24.00)36.假定动态分配一个类型为 Worker的具有 n个元素的数组,并由 P指向这个动态数组,如果要释放这个数组,则使用的语句为 1。(分数:2.00)填空项 1:_37.有如下定义语句:MyClass*p10;当类对象数组指针 p离开它的作用域时,系统自动调用析构函数_次。(分数:1.00)填空项 1:_38.语句 int *i;i=new
15、 int10;,释放指针 i的语句是 1。(分数:2.00)填空项 1:_39.如果一个模板声明时有类型形参表,则多个参数之间必须使用 1 隔开,每个参数都必须重复使用关键字 2。(分数:1.00)填空项 1:_40.软件工程包括三个要素,分别为方法、工具和 1。(分数:2.00)填空项 1:_41.在 C+语言中,一个函数的定义前加上关键字 1 时,该函数就声明为内联函数。(分数:2.00)填空项 1:_42.重载的流运算符函数经常定义为类的 1 函数。(分数:2.00)填空项 1:_43.重载的流运算符函数经常定义为类的 1 函数。(分数:2.00)填空项 1:_44.下面程序的输出结果是
16、_。#includeiostream.hvoid main()inta61,2,3,4,5,6;for(int i0;i5;i+)coutai“;coutendl;(分数:2.00)填空项 1:_45.C+本身没有定义 I/O操作,但 I/0操作包含在 C+实现中。C+标准库 iostream提供了基本的 I/O类。I/O操作分别由类 istream和工 1 提供。(分数:2.00)填空项 1:_46.有以下程序:#include iostreamusing namespace std;class Baseprivate:int a,b;public:Base(int x, int y)a=x
17、;b=y;void Show()couta , bend1;class Derived : public Baseprivate:int c;public:Derived(int x, int y, int z) : Base(x,y),c(z) void Show()coutcend1;int main()Base b(50,50),*pb;Derived d(10,20,30);pb=pb-Show();return 0;运行后的打印结果为_(分数:1.00)填空项 1:_47.如果表达式-x 中的“-”是重载的类运算符,采用运算符函数调用格式,及表达式还可以表示为 1。(分数:1.00)
18、填空项 1:_48.在下面程序的横线处填上适当的内容,使程序执行后的输出结果果为 1/2005。#includeiostmamusing namespace std;class Datepublic:Date(int m=1,int y=0):month(m),year(y)void Print()coutmonth“/“yearendl;operator+(const Dateprivate:int month,year;operator+(const Dateyear=d1.year+d2.year;month=d1.month+d2.month;year+=(month-1)/12;mo
19、nth=(month-1)%12+1;return Date(month,year);void main()Date d1(3,2004),d2,d3(10);d2=d3+d1;d2.Print();(分数:1.00)填空项 1:_49.下列程序的输出结果为_。#includeiostream.hvoid Func(char ch)switch(ch)case A:case a:cout“优秀“endl;case B:case b:cout“良好“endl;break;case C:case c:cout“及格“endl;break;default:cout“不及格“endl;void mai
20、n( )char ch1=bFunc(ch1);Func(A);(分数:2.00)填空项 1:_50.耦会和内聚是评价模块独立性的两个主要标准,其中 1 反映了模块内各成分之间的联系。(分数:1.00)填空项 1:_二级 C+笔试-419 答案解析(总分:85.00,做题时间:90 分钟)一、选择题(总题数:35,分数:61.00)1.下列有关继承和派生的叙述中,正确的是A) 派生类不能访问基类的保护成员B) 作为虚基类的类不能被实例化C) 派生类应当向基类的构造函数传递参数D) 虚函数必须在派生类中重新实现(分数:2.00)A.B.C. D.解析:解析 本题考查的知识点是:继承和派生。无论使
21、用哪种继承方式,派生类中的成员都不能访问基类中的私有成员,而可以访问基类中的公有成员和保护成员,因此选项 A) 不正确。在 C+中,只有抽象类不能被实例化,而虚基类不一定非得是抽象类,所以选项 B) 不正确。在派生类中可以重新定义从基类继承下来的虚函数,也可以不重新定义,因此选项 D) 不正确。故本题应该选择 C。2.是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。A) 模板 B) 类 C) 对象 D) 函数(分数:2.00)A. B.C.D.解析:3.将 E-R图转换到关系模式时,实体与联系都可以表示成A) 属性 B) 关系 C) 键 D) 域(分数:2.00)A
22、.B. C.D.解析:解析 数据库逻辑设计的主要工作是将 E-R图转换成指定 RDBMS中的关系模式。首先,从 E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,E-R 图中的属性也可以转换成关系的属性。实体集也可以转换成关系。4.对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。A) 125 B) n/2 C) n D) n+1(分数:2.00)A.B.C. D.解析:解析 对线性表进行顺序查找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在最坏情况下,要查找的元素是表的最后一个元素或查找失败,
23、这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为 n。5.字面常量 42、4.2、42L 的数据类型分别是 A) long、double、int B) long、float、int C) int、double、long D) int、float、long(分数:2.00)A.B.C.D. 解析:解析 根据题干可知,分别为整型、浮点型和长整型。6.下列成对的表达式中,运算符“/”的意义相同的一对是( )。A) 8/3和 8.0/3.0 B) 8/3.0和 8/3C) 8.0/3和 8/3 D) 8.0/3.0和 8.0/3(分数:2.00)A.B.C.D. 解析:7.关系表中的
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 419 答案 解析 DOC
