c++模拟题2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、单项选择题(4)结构化程序设计的3种结构是A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构(5)为了提高测试的效率,应该A)随机选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)集中对付那些错误群集的程序(7)软件生命周期中所花费用最多的阶段是A)详细设计B)软件编码C)软件测试D)软件维护(11)C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是A)增加了一些新的运算符B)允许函数重载,并允许设置缺省参数C)规定函数说明符必须用原型D)引进了类和对象的概念(19)决定C++语言中函数的返回值类型的是A)return语句中的表达式类型B)调用该函数时系统随机产生的类型C)调用该函数时的主调用函数类型D)在定义该函数时所指定的数据类型(22)对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是A)公有类型B)私有类型C)保护类型D)友元类型(23)在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是A)友元函数)虚函数C)构造函数D)析构函数(24)类的析构函数的作用是A)一般成员函数的初始化B)类的初始化C)对象的初始化D)删除类创建的对象(25)下列说法正确的是A)内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B)内联函数在编译时是将该函数的月标代码插入每个调用该函数的地方C)类的内联函数必须在类体内定义D)类的内联函数必须在类体外通过加关键字inline定义(26)下面对静态数据成员的描述中,正确的是A)静态数据成员可以在类体内进行初始化B)静态数据成员不可以被类的对象调用C)静态数据成员不能受private控制符的作用D)静态数据成员可以直接用类名调用(27)下面对于友元函数描述正确的是A)友元函数的实现必须在类的内部定义B)友元函数是类的成员函数C)友元函数破坏了类的封装性和隐藏性D)友元函数不能访问类的私有成员(28)在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是A)派生类的对象可以赋给基类的对象B)派生类的对象可以初始化基类的引用C)派生类的对象可以直接访问基类中的成员D)派生类的对象的地址可以赋给指向基类的指针(29)下面程序的运行结果为#includeiostream.hclassA{public:(){cout”1”;}~A(){cout”2”;}}classB:publicA{public:B(){cout”3”;}~B(){cout”4”;}}voidmain(){Bb;}A)1234B)1324C)1342D)3142(30)下列关于虚基类的描述,错误的是A)设置虚基类的目的是为了消除二义性B)虚基类的构造函数在非虚基类之后调用C)若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用D)若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数(31)下列关于多态性的描述,错误的是A)C++语言的多态性分为编译时的多态性和运行时的多态性B)编译时的多态性可通过函数重载实现C)运行时的多态性可通过模板和虚函数实现D)实现运行时多态性的机制称为动态绑定(32)下列运算符中,在C++语言中不能重载的是A)*B)=C)::D)/(35)下面程序的输出结果是#includeiostream.h{inta:public:example(intb){a=n++;}voidprint(){a=a+1;couta””;}voidprint()const{couta;}}voidmain(){examplext(3);constexampley(2);x.print();y.print();}A)22B)43C)42D)32二、填空题。(请将答案分别写在答题卡中序号为【1】~【15】的横线上,答在试卷上不得分。)(3)在面向对象的程序设计中,类描述的是具有相似性质的一组【3】。(6)在C++语言的结构化程序设计中,【6】是程序的基本组成单元;在C++语言的面向对象设计框架中,【7】是程序的基本组成单元。(11)对于下面定义的类MyClass,请在函数f()中添加对象成员把n的值修改为50。classMyClass{public:MyClass(intx){n=x;}voidSetNum(intn1){n=n1;}private:intn;};voidf(){MyClass*ptr=newMyClass(45);【12】}(12)继承的方式有公有继承、私有继承和【13】3种。(13)表达式operator+(x,y)还可以表示为【14】。(14)类模板的使用实际:是将类模板实例化成一个具体的【15】。试题答案一、选择题(04)D(05)D(07)D(11)D(19)D(22)D(23)C(24)D(25)B(26)D(27)C(28)C(29)C(30)B(31)C(32)C(35)C二、填空题(3)【3】对象(6)【6】函数【7】类(11)【12】ptr-SetNum(50);(12)【13】保护继承(13)【14】x+y(14)【15】类一、选择题下列各题A),B),C),D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。(6)下列叙述中,不属于软件需求规格说明书的作用的是A)便于用户、开发人员进行理解和交流B)反映出用户问题的结构,可以作为软件开发工作的基础和依据C)作为确认测试和验收的依据D)便于开发人员进行需求分析(11)下面关于类和对象的描述中,错误的是)类就是C++语言中的结构体类型,对象就是C++语言中的结构体变量B)类和对象之间的关系是抽象和具体的关系C)对象是类的实例,一个对象必须属于一个已知的类D)类是具有共同行为的若干对象的统一描述体(12)以下各选项组中,均是C++语言关键字的组是A)publicoperatorthisB)shodstringstaticC)itwhile=D)privatecoutprintf(22)在C++语言中,数据封装要解决的问题是A)数据的规范化B)便于数据转换C)避免数据丢失D)防止不同模块之间数据的非法访问(23)以下程序中,错误的行是①#includeiostream.h②classA③{④public:⑤intn=2:⑥A(intval){coutvalendl;}⑦~A(){};⑧};⑨voidmain()⑩{⑩Aa(0);⑩}A)⑤B)⑥C)⑦D)⑩(24)对类的构造函数和析构函数描述正确的是A)构造函数可以重载,析构函数不能重载B)构造函数不能重载,析构函数可以重载)构造函数可以重载,析构函数也可以重载D)构造函数不能重载,析构函数也不能重载(25)下面程序的运行结果为#include(iostream.hclassA{intnum;public:A(inti){num=i;}A(A&a){num=a.num++;}voidprint(){coutnum;}};voidmain(){Aa(1),b(a);a.print();b.print();A)11B)12C)21D)22(26)下面对静态数据成员的描述中,正确的是A)静态数据成员是类的所有对象共享的数据B)类的每个对象都有自己的静态数据成员C)类的不同对象有不同的静态数据成员值D)静态数据成员不能通过类的对象调用(27)如果类A被说明成类B的友元,则A)类A的成员即类B的成员B)类B的成员即类A的成员C)类A的成员函数不得访问类B的成员D)类B不一定是类A的友元(28)可以用p.a的形式访问派生类对象P的基类成员a,其中a是A)私有继承的公有成员B)公有继承的私有成员C)公有继承的保护成员D)公有继承的公有成员(29)建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、c(派生类的构造函数)这3种构造函数的调用顺序为A)abcB)acbC)cabD)cba(30)下面关于虚函数的描述,错误的是A)在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数B)基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数C)虚函数可以是另一个类的友元函数,但不能是静态成员函数D)基类中说明的纯虚函数在其任何派生类中都必须实现(31)下面关于模板的描述,错误的是A)函数模板和类模板的参数可以是任意的数据类型B)类模板不能直接使用,必须先实例化为相应的模板类.然后定义了模板类的对象后才能使用C)函数模板不能直接使用,需要实例化为模板函数后才能使用D)类模板的成员函数都是模板函数二、填空题请将答案分别写在答题卡中序号为【1】~【15】的横线上,答在试卷上不得分。(2)在面向对象方法中,类之间共享属性和操作的机制称为【2】。(3)耦合和内聚是评价模块独立性的两个主要标准.其中【3】反映了模块内各成份之间的联系。(9)通过使用new和delete两个运算符进行的分配为【9】存储分配。(11)在C++语言中,访问一个对象的成员所用的运算符是【11】,访问一个指针所指向的对象的成员所用的运算符是【12】。(12)C++语言支持的两种多态性分别是编译时的多态性和【13】的多态性。(13)重载的运算符保持其原有的【14】、优先级和结合性不变。模拟试题答案(2)一、选择题(06)D(11)A(12)A(22)D(23)A(24)A(25)C(26)A(27)D(28)D(29)A(30)B(31)A二、填空题(2)【2】继承(3)【3】内聚(9)【9】动态(11)【11】成员选择运算符(或”.”)【12】成员访问运算符(或”-”)(12)【13】运行时(13)【14】操作符个数一、选择题下列各题A),B),C),D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。(4)结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(5)软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指A)模块间的关系B)系统结构部件转换成软件的过程描述C)软件层次结构D)软件开发过程(11)下面关于C++语言的描述错误的是A)C++语言支持数据封装B)C++语言中引入友元没有破坏封装性C)C++语言允许函数名和运算符重载D)C++语言支持动态联编(19)一个函数功能不太复杂但要求被频繁调用,应选用A)内联函数B)重载函数C)递归函数D)嵌套函数(21)为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为A)publicB)protectedC)privateD)static(22)在C++语言程序中,对象之间的相互通信通过A)继承实现B)调用成员函数实现C)封装实现D)函数重载实现(23)类的析构函数是在什么时候调用的?A)类创建时B)创建对象时C)删除对象时D)不自动调用(24)通常拷贝构造函数的参数是A)某个对象名B)某个对象的成员名C)某个对象的引用名D)某个对象的指针名(25

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功