面向对象程序设计期末综合练习1.docx

上传人:太** 文档编号:86417077 上传时间:2023-04-14 格式:DOCX 页数:11 大小:34.18KB
返回 下载 相关 举报
面向对象程序设计期末综合练习1.docx_第1页
第1页 / 共11页
面向对象程序设计期末综合练习1.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《面向对象程序设计期末综合练习1.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计期末综合练习1.docx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、面对对象程序设计期末综合练习一(单项选择题)单项选择题1 . C+源程序文件的缺省扩展名为(A )。A. cpp B. exe C. obj D. lik2 .由C+源程序文件编译而成的目标文件的缺省扩展名为(C )oA.cppB. exeC. objD.lik3 .由C+目标文件连接而成的可执行文件的缺省扩展名为(B )oA.cppB. exeC. objD.lik4 .编写C+程序一般需经过的几个步骤依次是(B )。A.编译、编辑、连接、调试B.编辑、编译、连接、调试C.编译、调试、编辑、连接D.编辑、调试、编辑、连接5 .以下说法中正确的选项是(B )。A. C+程序总是从第一个定义的函

2、数开头执行C+程序总是从main函数开头执行B. C+函数必需有返回值,否那么不能使用函数C+程序中有调用关系的全部函数必需放在同一个程序文件中6 .以下表达中不正确的选项是(C )。A.在一个函数中,可以有多条return语句B.函数的定义不能嵌套,但函数的调用可以嵌套C.函数必需有返回值D.不同的函数中可以使用相同名字的变量7 .当折区八加后面的文件名用双引号括起来时,查找被包含文件的方式是(B )。A.直接按系统设定的标准方式搜寻名目.先在源程序所在名目搜寻,再按系统设定的标准方式搜寻名目C.仅仅搜寻源程序所在名目D.搜寻当前规律盘上的全部名目8 .当折慎抽Q后面的文件名用尖括号括起来时

3、,查找被包含文件的方式是(A )。A.直接按系统设定的标准方式搜寻名目B.先在源程序所在名目搜寻,再按系统设定的标准方式搜寻名目C.仅仅搜寻源程序所在名目D.搜寻当前规律盘上的全部名目9 .预处理命令在程序中都是以(B )符号开头的。A. * B. # C. & D. 10 .用new运算符创立一个含10个元素的一维整型数组的正确语句是(C )。A. int *p=new a10; B. int *p=new float10;C. int *p=new int10; D. int *p=new int10 = 1,2,3,4, 511 .假定变量m定义为“int那么定义变量p的正确语句为(B

4、)。A. int p=&m; B. int *p=&m; C. int &p=*m; D. int *p=m;在定义一个派生类时,假设不使用保存字显式地规定采纳何种继承方式,那么默认为(A )方式。A.私有继承B.非私有继承C.保护继承D.公有继承建立包含有类对象成员的派生类对象时,自动调用构造函数的执行挨次依次为( C )的构造函数。A.自己所属类、对象成员所属类、基类B.对象成员所属类、基类、自己所属类C.基类、对象成员所属类、自己所属类D.基类、自己所属类、对象成员所属类当派生类中有和基类一样名字的成员时,一般来说,(B )。A.将产生二义性B.派生类的同名成员将掩盖基类的成员C.是不能

5、允许的D.基类的同名成员将掩盖派生类的成员C+中的虚基类机制可以保证:(D )oA.限定基类只通过一条路径派生出派生类B.允许基类通过多条路径派生出派生类,派生类也就能屡次继承该基类C.当一个类屡次间接从基类派生以后,派生类对象能保存多份间接基类的成员D.当一个类屡次间接从基类派生以后,其基类只被一次继承以下对派生类的描述中错误的说法是:(D )。A.派生类至少有一个基类B.派生类可作为另一个派生类的基类C.派生类除了包含它直接定义的成员外,还包含其基类的成员D.派生类所继承的基类成员的访问权限保持不变派生类的对象对其基类中(C )可直接访问。A.公有继承的公有成员B.公有继承的私有成员C.公

6、有继承的保护成员D.私有继承的公有成员12 .假定k是一个double类型的变量,那么关于变量p的正确定义语句为(D )。A.doublep=&k;B.int *p=&k;C.double&p=*k;D.char *p=Thankyou!”;.假定p指向的字符串为string”,假设要输出这个字符串的地址值,那么使用(D )。A. cout*s; B. couts; C. cout&s; D. couta D. x. a.假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,那么访问x对象中函数 成员a()的格式为(B )。A. x. a B. x. a() C. x-a D. x

7、-a().假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,那么访问px 所指对象中数据成员a的格式为(C )。A. px (a) B. pxa C. px一aD. px. a.假定AA为一个类,a为该类私有的数据成员,GetValueO为该类公有函数成员,它返回a 的值,x为该类的一个对象,那么访问x对象中数据成员a的格式为(D )。A. x. a B. x. a() C. x-GetValue () D. x. GetValue ().假定AA为一个类,int a()为该类的一个成员函数,假设该成员函数在类定义体外定义,那么 函数头为(A )oA. int AA: :

8、a() B. int AA:a() C. AA: :a()D. AA: : int a().假定AA为一个类,a为该类公有的数据成员,假设要在该类的一个成员函数中访问它,那么书 写格式为(A )oA. a B. AA: :a C. a() D. AA:a().假设需要把一个类外定义的成员函数指明为内联函数,那么必需把关键字(B )放在函数原 型或函数头的前面。A. in B. inline C. inLine D. InLiner.在多文件结构的程序中,通常把类的定义单独存放于(D )中。A.主文件B.实现文件C.库文件D.头文件.在多文件结构的程序中,通常把类中全部非内联函数的定义单独存放于

9、(B )中。A.主文件B.实现文件C.库文件D.头文件.在多文件结构的程序中,通常把含有main。函数的文件称为(A )。A.主文件 B.实现文件C.程序文件 D.头文件. 一个C+程序文件的扩展名为(C )oA. . h B. . c C. . cpp D., cp.在C+程序中使用的cin标识符是系统类库中定义的(A )类中的一个对象。A.istreamB. ostreamC.iostreamD.fstream.在C+程序中使用的cout标识符是系统类库中定义的(B )类中的一个对象。A.istreamB. ostreamC.iostreamD.fstream.假定AA是一个类,abc是该

10、类的一个成员函数,那么参数表中隐含的第一个参数的类型为 (D )oA. int B. char C. AA D. AA*.假定AA是一个类,abc是该类的一个成员函数,那么参数表中隐含的第一个参数为(C )。A. abc B. *this C. this D. this&.假定AA是一个类,“AA& abc ();是该类中一个成员函数的原型,假设该函数存在对*this 赋值的语句,当用x.abc()调用该成员函数后,x的值(A )oA.已经被转变 B.可能被转变C.不变 D.不受函数调用的影响.假定AA是一个类,“AA* abc () const是该类中一个成员函数的原型,假设该函数返回thi

11、s 值,当用x.abcO调用该成员函数后,x的值(C )o A.已经被转变B.可能被转变C.不变D.受到函数调用的影响.类中定义的成员默认为(B )访问属性。A.publicB. privateC.protectedD. friend.结构中定义的成员默认为(A )访问属性。A.publicB. privateC.protectedD. friend.当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度 为(C )oA. n B. n+1 C. n-l D. n-2.在一个用链表实现的队列类中,假定每个结点包含的值域用elem表示,包含的指针域用 next表示,链队的

12、队首指针用elemHead表示,队尾指针用elemTail表示,假设链队非空, 那么进行插入时必需把新结点的地址赋给(D )。A. elemHeadB. elemTailC. elemHead-next 和 elemHeadD. elemTail一next 和 elemTail54.在一个用链表实现的队列类中,假定每个结点包含的值域用elem表示,包含的指针域用 next表示,链队的队首指针用elemHead表示,队尾指针用elemTail表示,假设链队为空, 那么进行插入时必需把新结点的地址赋给(C )oA. elemHeadB. elemTailC. elemHead 和 elemTail

13、D. elemHead 或 elemTail.队列具有(A )的操作特性。A.先进先出 B.先进后出C.进出无序 D.进出任意.栈具有(B )的操作特性。A.先进先出 B.先进后出C.进出无序 D.进出任意.对于一个类的构造函数,其函数名与类名(A )oA.完全相同 B.基本相同C.不相同 D.无关系.对于一个类的析构函数,其函数名与类名(C )。A.完全相同B.完全不同59.类的构造函数是在定义该类的一个(A.成员函数B.数据成员C.只相差一个字符D.无关系C )时被自动调用执行的。C.对象 D.友元函数.类的析构函数是一个对象被(B )时自动调用的。A.建立B.撤消C.赋值 D.引用.一个

14、类的构造函数通常被定义为该类的(A )成员。A.公用B.保护C.私有D.友元. 一个类的析构函数通常被定义为该类的(C )成员。A.私有B.保护C.公用D.友元.假定AB为一个类,那么执行“AB x;语句时将自动调用该类的(B )。A.带参构造函数B.无参构造函数 C.拷贝构造函数 D.赋值重载函数.假定AB为一个类,那么执行“AB x(a,5);”语句时将自动调用该类的(A )。A.带参构造函数B.无参构造函数 C.拷贝构造函数 D.赋值重载函数.假定AB为一个类,那么执行AB *s=new AB (a, 5)语句时得到的一个动态对象为(D )。A. sB. s一aC. s. aD. *s.

15、假定AB为一个类,那么执行AB 语句时将自动调用该类的(D )。A.无参构造函数B.带参构造函数 C.赋值重载函数D.拷贝构造函数.假设需要使类中的一个指针成员指向一块动态存储空间,那么通常在(B )函数中完成。A.析构 B.构造 C.任一成员D.友元.当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够存 储(A)个整数。A. nB. n+1 C. n-1 D. 1.假定一个类的构造函数为 “A(int aa, int bb) a=aa; b=aa*bb;”,那么执行A x(4, 5);” 语句后,x.a和x.b的值分别为(C )oA. 4 和 5 B.

16、 5 和 4 C. 4 和 20 D. 20 和 5.假定一个类的构造函数为 “A(int aa=l, int bb=0) a=aa; b=bb;”,那么执行 “A x(4);” 语句后,x.a和x.b的值分别为(D ) oA. 1和0 B. 1和4 C.4和1 D. 4和0.假定AB为一个类,那么(B )为该类的拷贝构造函数的原型说明。A. AB(AB x) ; B. AB(AB& x) : C. void AB(AB& x) ; D. AB(int x);.假定一个类的构造函数为 “B(int ax, int bx) : a (ax), b(bx) ,执行 “B x (1,2), y (3

17、,4); x=y;”语句序列后 x.a 的值为(C )。A. 1 B. 2 C. 3 D. 4.假定一个类AB只含有一个整型数据成员a,当用户不定义任何构造函数时,系统为该类定 义的无参构造函数为(D)oA. AB() a=0;B. AB(int aa=0) : a(aa) C. AB (int aa) : a(aa) D. AB() .假定一个类AB只含有一个整型数据成员a,用户为该类定义的带参构造函数可以为(C )。A. ABO B. ABO : a(0) C. AB(int aa=O) a=aa; D. AB(int aa) .对于任一个类,用户所能定义的构造函数的个数至多为(D )oA

18、. 0B. 1C. 2D.任意个.对于任一个类,用户所能定义的析构函数的个数至多为(B )。A. 0B. 1C. 2D.任意个.假定AB为一个类,那么执行“AB *px=new ABn;”语句时将(A )。A.动态安排一个数组B.动态安排一个对象C.静态安排一个数组D.静态安排一个对象.设px是指向一个类对象的指针变量,那么执行delete px;”语句时,将自动调用该类的 (C )oA.无参构造函数B.带参构造函数C.析构函数 D.拷贝构造函数.当一个类对象离开它的作用域时,系统自动调用该类的(D )oA.无参构造函数B.带参构造函数C.拷贝构造函数D.析构函数.假定一个类对象数组为An,当

19、离开它定义的作用域时,系统自动调用该类析构函数的次 数为(C )。A. 0B. 1C. nD. n-1.假定AB为一个类,那么执行“AB语句时调用该类无参构造函数的次数为(D )。A. 0B. 1C. 9D. 10.假定AB为一个类,那么执行“AB *px=new ABn 语句时调用该类无参构造函数的次数为 (A )oA. n B. n-1 C. 1 D. 0.假定AB为一个类,那么执行“AB a, b(3), *p;”语句时共调用该类构造函数的次数为(A )。A. 2 B. 3 C. 4 D. 5.假定AB为一个类,那么执行“AB a,b3, *p4语句时共调用该类构造函数的次数为 (B )

20、oA. 3 B. 4 C. 5 D. 9.假定AB为一个类,那么执行“AB a, b(2), c3, *p=&a; 语句时共调用该类无参构造函数 的次数为(D)。A. 5 B. 6 C. 3 D. 4.假定AB为一个类,那么执行AB *p=new AB(1, 2); ”语句时共调用该类构造函数的次数为 (B )oA. 0 B. 1 C. 2 D. 3.假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,那么执行“delete口 px;”语句时共调用该类析构函数的次数为(C )。A. 0 B. 1 C. n D. n+1)实现的。)实现的。A.函数体 B.初始化表 C.参数表D.

21、初始化表或函数体60 .对类对象成员的初始化是通过构造函数中给出的(B61 .对类中常量成员的初始化是通过构造函数中给出的(C )实现的。A.函数体 B.参数表C.初始化表D.初始化表或函数体62 .对类中引用成员的初始化是通过构造函数中给出的(C )实现的。A.函数体 B.参数表 C.初始化表D.初始化表或函数体.类的构造函数可以带有(D)个参数。A. 0B. 1C. 2D.任意.类的析构函数可以带有(A)个参数。A. 0B. 1C. 2D.任意. 一个类的静态数据成员所表示属性(C )oA.是类的或对象的属性B.只是对象的属性C.只是类的属性D.类和友元的属性.类的静态成员的访问掌握(D

22、)。A.只允许被定义为privateB.只允许被定义为private或protectedC.只允许被定义为publicD.可允许被定义为 private、protected 或 public.静态成员函数对类的数据成员访问(B )。A.是不允许的B.只允许是静态数据成员C.只允许是非静态数据成员D.可允许是静态数据成员或非静态数据成员.被非静态成员函数访问的类的数据成员(A )oA.可以是非静态数据成员或静态数据成员B.不行能是类的静态数据成员C.只能是类的非静态数据成员D.只能是类的静态数据成员.静态数据成员的初始化是在(D )中进行的。A.构造函数B.任何成员函数C.所属类D.全局区.当将

23、一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的(D )oA.只能是公有成员B.只能是保护成员C.只能是除私有成员之外的任何成员D.具有任何权限的成员.引入友元的主要目的是为了( C )oA.增加数据平安性B.提高程序的牢靠性C.提高程序的效率和敏捷性D.保证类的封装性.一个类的成员函数也可以成为另一个类的友元函数,这时的友元说明(A )。A.需加上类域的限定B.不需加上类域的限定C.类域的限定可加可不加D.不需要任何限定.一个类的友元不是该类的成员,与该类的关系亲密,所以它(D )oA.有this指针,有默认操作的对象B.没有this指针,可以有默认操作的对象

24、C.有this指针,不能执行默认操作D.没有this指针,也就没有默认操作的对象.在重载一个运算符时,其参数表中没有任何参数,这说明该运算符是(B )oA.作为友元函数重载的1元运算符B.作为成员函数重载的1元运算符C.作为友元函数重载的2元运算符D.作为成员函数重载的2元运算符.在成员函数中进行双目运算符重载时,其参数表中应带有(B )个参数。A. 0 B. 1 C. 2 D. 3104.104.双目运算符重载为一般函数时,其参数表中应带有(C )个参数。A. 0 B. 1105. 假如表达式a+b 式,那么可表示为(A A. a. operator+ (b) C. operator+(a,

25、 b)106. 假如表达式a=bC. 2D. 3中的“ + ”是作为成员函数重载的运算符,假设采纳运算符函数调用格)oB. b. operator+ (a)D. operator(a+b)中的“一”是作为一般函数重载的运算符,假设采纳运算符函数调用格式,那么可表示为(CA. a. operator (b)C. operator= (a,b)oB. b. operator= (a)D. operator= (b, a)假如表达式a+中的“+”是作为一般函数重载的运算符,假设采纳运算符函数调用格式,那么可表示为(C )oA. a. operator+ () B. operator+(a)C. op

26、erator+(a, 1) D. operator+(l, a)假如表达式+a中的“+”是作为成员函数重载的运算符,假设采纳运算符函数调用格式,那么可表示为(D )。A. a. operator+(l)B. operator+(a)C. operator+(a, 1)D. a. operator+()关于运算符重载,以下说法正确的选项是(C )。A.重载时,运算符的优先级可以转变。B.重载时,运算符的结合性可以转变。C.重载时,运算符的功能可以转变。D.重载时,运算符的操作数个数可以转变。107. 关于运算符重载,以下说法正确的选项是(B )。A.全部的运算符都可以重载。B.通过重载,可以使运

27、算符应用于自定义的数据类型。C.通过重载,可以制造原来没有的运算符。D.通过重载,可以转变运算符的优先级。108. 一个程序中数组a和变量k定义为“int a510,k; ,且程序中包含有语句 “a(2,5)=+k*3;”,那么此语句中确定属于重载操作符的是(A )。A. ( ) B. = C. + D. *假定K是一个类名,并有定义“Kk; int j;,K中重载了操作符(),且语句“j=k;”和“k(5)=99;”都能顺当执行,说明该操作符函数的原形只可能是(C )。A. K operator ( ) (int) ;B. int operator ( ) (int&);C. int & o

28、perator ( )(int);D. K feoperator( )(int);假定M是一个类名,且M中重载了操作符二,可以实现M对象间的连续赋值,如 “ml=ni2初3;”。重载操作符二的函数原型最好是(D )。A. int operaotor=(M);B.int operator= (M&);C. M operator=(M&);D. M& operator=(M);下面是重载双目运算符+的一般函数原形,其中最符合+原来含义的是(A )。A. Value operator+(Value, Value);B. Value operator+(Value, int);C. Value &op

29、erator+(Value, Value); D. Value &operator+(Value&, Value&);下面是重载双目运算符-的成员函数原形,其中最符合-原来含义的是(A )oA.B.C.D.Value Value:operator-(Value);Value Value:operator-(int);Valuefe Value:operator-(Value);Value& Value:operator-(Valuefe);109. 在重载一运算符时,假设运算符函数的形参表中没有参数,那么不行能的状况是(D )。 A.该运算符是一个单目运算符。B.该运算符函数有一个隐含的参数t

30、his。C.该运算符函数是类的成员函数。D.该运算符函数是类的友元函数。110. 关于插入运算符的重载,以下说法不正确的选项是(B )。A.运算符函数的返回值类型是ostream &。B.重载的运算符必需定义为类的成员函数。C.运算符函数的第一个参数的类型是ostream &。D.运算符函数有两个参数。111. 从一个基类派生出的各个类的对象之间(C )oA.共享全部数据成员,每个对象还包含基类的全部属性B.共享局部数据成员,每个对象还包含基类的全部属性C.不共享任何数据成员,但每个对象还包含基类的全部属性D.共享局部数据成员和函数成员假如是类B在类A的基础上构造,那么,就称(B )。A.类A

31、为基类或父类,类B为超类或子类B.类A为基类、父类或超类,类B为派生类或子类C.类A为派生类,类B为基类D.类A为派生类或子类,类B为基类、父类或超类C+的继承性允许派生类继承基类的(C )。A.局部特性,并允许增加新的特性或重定义基类的特性B.局部特性,但不允许增加新的特性或重定义基类的特性C.全部特性,并允许增加新的特性或重定义基类的特性D.全部特性,但不允许增加新的特性或重定义基类的特性派生类的成员函数可以直接访问基类的(B )成员。A.全部B.公有和保护C.保护和私有D.私有对于公有继承,基类的公有和保护成员在派生类中将(D )成员。A.全部变成公有B.全部变成保护C.全部变成私有D.仍旧相应保持为公有和保护对于公有继承,基类中的私有成员在派生类中将(C )。A.能够直接使用成员名访问B.能够通过成员运算符访问C.仍旧是基类的私有成员D.变为派生类的私有成员当保护继承时,基类的( B )在派生类中成为保护成员,在类作用域外不能够通过派生类的对象来直接访问该成员。A.任何成员B.公有成员和保护成员C.保护成员和私有成员D.私有成员

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁