【计算机类职业资格】二级C++-116及答案解析.doc
《【计算机类职业资格】二级C++-116及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-116及答案解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-116 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:100.00)1.下列数据结构中,能用二分法进行查找的是_。(分数:2.50)A.无序线性表B.线性链表C.二叉链表D.顺序存储的有序表2.下列叙述中,不属于设计准则的是_。(分数:2.50)A.提高模块独立性B.使模块的作用域在该模块的控制域中C.设计成多入口、多出口模块D.设计功能可预测的模块3.下列队列的描述中,正确的是_。(分数:2.50)A.队列属于非线性表B.队列在队尾删除数据C.队列按“先进后出”进行数据操作D.队列按“先进先出”进行数据操作4.对下列二叉树进行前序遍历的结果
2、为_。 (分数:2.50)A.ABCDEFGHB.ABDGEHCFC.GDBEHACFD.GDHEBFCA5.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。(分数:2.50)A.冒泡排序为 n(n-1)/2B.简单插入排序为 nC.希尔排序为 nD.快速排序为 n/26.为了使模块尽可能独立,要求_。(分数:2.50)A.内聚程度要尽量高,耦合程度要尽量强B.内聚程度要尽量高,耦合程度要尽量弱C.内聚程度要尽量低,耦合程度要尽量弱D.内聚程度要尽量低,耦合程度要尽量强7.下列选项中不属于软件生命周期开发阶段任务的是_。(分数:2.50)A.软件测试B.概要设
3、计C.软件维护D.详细设计8.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指_。(分数:2.50)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对9.在学校中,“班级”与“学生”两个实体集之间的联系属于_关系。(分数:2.50)A.一对一B.一对多C.多对一D.多对多10.软件调试的目的是_。(分数:2.50)A.发现错误B.改善软件的性能C.改正错误D.验证软件的正确性11.在公有派生时,派生类中定义的成员函数只能访问原基类的_。(分数:2.50)A.私有成员、保护成员和公有成员B.保护成员和私有成员C.公有成员
4、和保护成员D.公有成员和私有成员12.有如下定义: int b10=1,2,3,4,5,6,7,8,9,10,*q=b; 则数值为 8 的表达式是_。(分数:2.50)A.*q+8B.*(q+7)C.*q+=8D.q+713.下面的符号中可以用作 C+标识符的是_。(分数:2.50)A.3testB.fccotherC.elseD.radius14.下列程序执行后,输出的结果是_。 int x=-5,y=0; while(+x) y+; coutyendl;(分数:2.50)A.1B.2C.4D.515.有如下类声明: class TestClass int n; public: TestCl
5、ass(int i=0):n(i) void setValue(int n0); ; 下面关于 setValue 成员函数的实现中,正确的是_。(分数:2.50)A.TestClass:setValue(int n0)n=n0;B.void TestClass:setValue(int n0)n=n0;C.void setValue(int n0)n=n0;D.setValue(int n0)n=n0;16.下面关于常成员函数的说法中正确的是_。(分数:2.50)A.常成员函数不能修改任何的数据成员B.常成员函数只能修改一般的数据成员C.常成员函数只能修改常数据成员D.常成员函数只能通过常对象
6、来调用17.下面的函数调用为: fun(x+y,3,min(n-1,y)则 fun 的实参个数是_。(分数:2.50)A.3B.4C.5D.618.下面关于虚函数的描述中,正确的是_。(分数:2.50)A.基类中利用 virtual 关键字说明一个虚函数后,其派生类中定义相同的原型函数时可不必加 virtual来说明B.虚函数是非成员函数C.虚函数是 static 类型的成员函数D.派生类中的虚函数与基类中类型相同的虚函数具有不同的参数个数或类型19.有如下程序: #includeiostream using namespace std; class Base protected: Base(
7、)cout“Base“; Base(char c)coutc; ; class Derived:public Base public: Derived(char c)coutc; ; int main() Derived d(“Derived“); return 0; 执行这个程序屏幕上将显示输出_。(分数:2.50)A.DerivedB.DerivedBaseC.BaseDerivedD.DerivedDerived20.有如下程序: #includeiostream using namespace std; int main() cout.fill(“*“); cout.width(6);
8、 cout.fill(“#“); cout888endl; return 0; 的执行结果是_。(分数:2.50)A.#888B.888#C.*888D.888*21.假定一个类的构造函数为 A(int aa,int bb)a=aa-;b=a*bb;,则执行 A x(4,5);语句后,x.a 和x.b 的值分别为_。(分数:2.50)A.3 和 15B.5 和 4C.4 和 20D.20 和 522.在类中说明的成员可以使用关键字的是_。(分数:2.50)A.publicB.externC.cpuD.register23.下列不能作为类的成员的是_。(分数:2.50)A.自身类对象的指针B.自
9、身类对象C.自身类对象的引用D.另一个类的对象24.使用地址作为实参传给形参,下列说法正确的是_。(分数:2.50)A.实参是形参的备份B.实参与形参无联系C.形参是实参的备份D.参与形参是同一对象25.下列程序的输出结果是_。 #includeiostream.h void main() int n3=10,20,30,40,50,60;int(*p)3; p=n;coutp00“,“*(p0+1)“,“(*p)2endl;(分数:2.50)A.10,30,50B.10,20,30C.20,40,60D.10,30,6026.设程序如下: #includeiostream using nam
10、espace std; int main() int *p,*q,r=10; q= p= cout*p+1endl; return 0; 以上程序的输出结果是_。(分数:2.50)A.P 的地址B.r 的地址C.11D.运行错误27.下面关于函数模板的表述中不正确的是_。(分数:2.50)A.类模板的成员函数都是模板函数B.类模板本身在编译过程中不会产生任何代码C.类模板只能有虚拟类型的参数D.用类模板定义一个对象时,实参不能省略28.下面类的声明中的几个语句,正确的是(设定语句是主函数中的语句)_。 class TestClass private: int data; public: Tes
11、tClass(int g_data) data=g_data; void show()coutdataendl; ;(分数:2.50)A.TestClass *p;B.TestClass m;C.TestClass.data=8;D.TestClass.show();29.类中的一个字符指针成员指向具有 m 个字节的存储空间时,它所能存储的字符串的最大长度为_。(分数:2.50)A.m-2B.m-1CmD.m+130.有如下程序: #includeiostream using namespace std; class TestClass static int i; public: TestCl
12、ass ()i+; TestClass()i-; static int getVal()return i; ; int TestClass:i=0; void f()TestClass obj2;coutobj2.getVal(); int main() TestClass obj1; f(); TestClass * obj3=new TestClass;coutobj3-getVal(); delete obj3;coutTestClass:getVal(); return 0; 程序的输出结果是_。(分数:2.50)A.232B.221C.222D.23131.下面关于派生类的描述中错误
13、的是_。(分数:2.50)A.派生类中至少有一个基类B.一个派生类可以作为另一个派生类的基类C.派生类只继承了基类中的公有成员和保护成员D.派生类的缺省继承方式是私有32.有如下程序: #includeiostream using namespace std; class TlestClass int n; public: TestClass(int k):n(k) int get()return n; int get()constreturn n+1; ; int main() TestClass p(5); const TestClass q(6); coutp.get()q.get();
14、 return 0; 执行后的输出结果是_。(分数:2.50)A.55B.57C.75D.7733.下列关于抽象类的表述中正确的是_。(分数:2.50)A.派生类必须要实现作为基类的抽象类中的纯虚函数B.抽象类的成员函数至少有一个没实现C.抽象类不可能用来定义对象D.派生类不能成为抽象类34.执行下列语句: #includeiostream using namespace std; int main() int x=3; if(x=5) coutx+endl; else coutxendl; return 0; 程序的输出是_。(分数:2.50)A.3B.4C.5D.635.假定 TestCl
15、ass 为一个类,则该类的拷贝构造函数的声明语句为_。(分数:2.50)A.TestClass(TestClass x)B.TestClass void swap(int x,int y) int temp=x; x=y; y=temp; cout“x=“x“,y=“yendl; int main() int x=3,y=2; swap(x,y); cout“x=“x“,y=“yendl; return 0; (分数:2.50)A.x=3,y=2x=3,y=2B.x=2,y=3x=3,y=2C.x=2,y=3x=2,y=3D.x=3,y=2x=2,y=339.在每个 C+程序中必须有且仅有一个
16、_。(分数:2.50)A.函数B.主函数C.预处理指令D.语句40.有如下程序: #includeiostream using namespace std; class A public: A()cout“A“; ; class Bpublic:B()cout“B“; class C:public A B b; public: C()cout“C“; ; int main()C obj;return 0; 执行后的输出结果是_。(分数:2.50)A.ABCB.BACC.ACBD.CBA二级 C+-116 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:100
17、.00)1.下列数据结构中,能用二分法进行查找的是_。(分数:2.50)A.无序线性表B.线性链表C.二叉链表D.顺序存储的有序表 解析:解析 二分法查找只适用于顺序存储的有序表,表中的元素按值从小到大排列。2.下列叙述中,不属于设计准则的是_。(分数:2.50)A.提高模块独立性B.使模块的作用域在该模块的控制域中C.设计成多入口、多出口模块 D.设计功能可预测的模块解析:解析 大量软件设计表明,以下的设计准则是可以借鉴为设计的指导和对软件结构图进行优化,这些准则是:提高模块独立性;模块规模适中;深度、宽度、扇出和扇入适当;使模块的作用域在该模块的控制域中;应减少模块的接口和界面的复杂性;设
18、计成单入口、单出口的模块;设计功能可预测的模块。3.下列队列的描述中,正确的是_。(分数:2.50)A.队列属于非线性表B.队列在队尾删除数据C.队列按“先进后出”进行数据操作D.队列按“先进先出”进行数据操作 解析:解析 队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。队列的操作数是依据先进先出的原则进行的。因此队列亦称作先进先出的线性表,或后进后出的线性表。4.对下列二叉树进行前序遍历的结果为_。 (分数:2.50)A.ABCDEFGHB.ABDGEHCF C.GDBEHACFD.GDHEBFCA解析:解析 遍历就是不重复地访问二叉树的所有结点
19、。二叉树遍历的方法有 3 种:前序遍历、中序遍历和后序遍历。记住 3 种遍历的顺序: 前序,访问根按前序遍历左子树按前序遍历右子树。 中序,按中序遍历左子树访问根按中序遍历右子树。 后序,按后序遍历左子树按后序遍历右子树访问根。 所以对该二叉树的中序遍历结果为 ABDGEHCF。5.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。(分数:2.50)A.冒泡排序为 n(n-1)/2 B.简单插入排序为 nC.希尔排序为 nD.快速排序为 n/2解析:解析 在最坏情况下,冒泡排序所需要的比较次数为 n(n-1)/2;简单插入排序所需要的比较次数为 n(n-1)/2
20、;希尔排序所需要的比较次数为 O(n 1.5 );堆排序所需要的比较次数为 O(nlog 2 n)。6.为了使模块尽可能独立,要求_。(分数:2.50)A.内聚程度要尽量高,耦合程度要尽量强B.内聚程度要尽量高,耦合程度要尽量弱 C.内聚程度要尽量低,耦合程度要尽量弱D.内聚程度要尽量低,耦合程度要尽量强解析:解析 模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦合性越弱。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块
21、内的内聚性,有利于提高模块的独立性。7.下列选项中不属于软件生命周期开发阶段任务的是_。(分数:2.50)A.软件测试B.概要设计C.软件维护 D.详细设计解析:解析 软件生命周期分为软件定义、软件开发及软件运行维护三个阶段,其中开发阶段包括概要设计、详细设计、实现和测试。8.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指_。(分数:2.50)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对 解析:解析 数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。所以选项 A,选项 B 和
22、选项 C 都不正确。9.在学校中,“班级”与“学生”两个实体集之间的联系属于_关系。(分数:2.50)A.一对一B.一对多 C.多对一D.多对多解析:解析 一个班可以有多名学生,而一名学生只能属于一个班级,所以“班级”与“学生”两个实体集之间的联系属于一对多关系。10.软件调试的目的是_。(分数:2.50)A.发现错误B.改善软件的性能C.改正错误 D.验证软件的正确性解析:解析 在对程序进行了成功的测试之后将进入程序调试,程序调试的任务是诊断和改正程序中的错误。11.在公有派生时,派生类中定义的成员函数只能访问原基类的_。(分数:2.50)A.私有成员、保护成员和公有成员B.保护成员和私有成
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C116 答案 解析 DOC
