2022年面向对象程序设计复习题专科 .pdf

上传人:Q****o 文档编号:25453765 上传时间:2022-07-11 格式:PDF 页数:7 大小:38.04KB
返回 下载 相关 举报
2022年面向对象程序设计复习题专科 .pdf_第1页
第1页 / 共7页
2022年面向对象程序设计复习题专科 .pdf_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《2022年面向对象程序设计复习题专科 .pdf》由会员分享,可在线阅读,更多相关《2022年面向对象程序设计复习题专科 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1 / 7 面向对象程序设计复习题专科一、单项选择题1. 在类定义之外定义成员函数时,下列哪些说法是正确的()。A. 必须在函数名之前加上类名和作用域符 B. 类的成员函数不可重载C. 类定义中可以不声明该函数 D. 函数名前作用域符课省略2. 多重继承的构造顺序一般可分为4 步,下面给出这4 个步骤:step1: 任何非虚拟基类的构造函数按照它们被继承的顺序构造。step2: 任何虚拟基类的构造函数按照它们被继承的顺序构造。step3: 任何成员对象的构造函数按照它们声明的顺序构造。step4: 类自己的构造函数。这 4 个步骤的正确顺序是()。A. step4、step3、step1、st

2、ep2 B. step2、step4、step3、 step1 C. step2、step1、step3、step4 D. step3、step4、step1、 step2 3. 假设 MyClass 是一个类,则该类的拷贝构造函数的声明语句为( ) 。A. MyClass(MyClass p) 。 B. MyClass& (MyClass p) 。C. MyClass(MyClass& p) 。 D. MyClass(MyClass * p) 。4. 重载运算符与原运算符可以不一致的是什么 ( )。A优先级 B操作数个数 C操作内容 D结合性5. 当用户进行鼠标操作时,释放鼠标左键会发出()

3、消息。AWM_lBUTTONDOWN B WM_lBUTTONUP CWM_lBUTTONBLOCK DWM_RBUTTONUP 6. 下面描述中,表达错误的是()。A. 公有继承时基类中的public 成员在派生类中仍是public 的B. 公有继承是基类中的private 成员在派生类中仍是private 的C. 公有继承时基类中的protected 成员在派生类中仍是protected 的D. 私有继承时基类中的public 成员在派生类中是private 的7. 可以用 p.a的形式访问派生类对象p的基类成员a,其中 a是什么成员()A. 私有继承的公有成员 B. 公有继承的私有成员C

4、. 公有继承的保护成员 D. 公有继承的公有成员8. 考虑函数原型void test(int a,int b=7,char=*), 下面的函数调用中,属于不合法调用的是()A. test(5)。 B. test(5,8)。 C. test(6,#) 。 D. test(0,0,*) 。9. 如果在基类中将show声明为不带返回值的纯虚函数,正确的写法是()A. virtual show( )=0 。 B. virtual void show( ) 。C. virtual void show( )=0 。 D. void show( )=0 virtual 。10. 在 ( ) 情况下适宜采用

5、inline 定义内联函数。A. 函数体含有循环语句 B. 函数体含有递归语句C. 函数代码少、频繁调用 D. 函数代码多、不常调用11. 在下列叙述中,不是Windows 程序的特点是()AWindows 程序通过窗口与用户进行交互。BWindows 程序是应用事件驱动进行编程。CWindows 程序是利用消息进行通信。 DWindows 程序是利用过程驱动的程序。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 7 页2 / 7 12. 设置虚基类的目的是()。A. 简化程序; B. 消除二义性; C. 提高运行效率; D. 减少目标

6、代码;13. 下列不是控件的是( ) A. 组合框 B. 编辑框 C. 滚动条 D.菜单14. 如果类 A 被说明成类B 的友元,则 ( ) A. 类 A 的成员即类B 的成员 B. 类 B 的成员即类A 的成员C. 类 A 的成员函数不得访问类B 的成员 D. 类 B 不一定是类A 的友元15. 不是 Windows 应用程序的资源的是()A. 加速键 B. 位图 C. 菜单 D. 窗口16. 关于 delete运算符的下列描述中,()是错误的。A. 它必须用于new 返回的指针;B. 使用它删除对象时要调用析构函数;C. 对一个指针可以使用多次该运算符;D. 指针名前只有一对方括号符号,不

7、管所删除数组的维数。17. 在下列叙述中,叙述错误的是( ) AWindows 应用程序与控制台(Console)程序的入口函数不同。B在基于MFC 编写的程序中,其类大部分都是由CObject 类派生出来CWM_LBUTTONDOWN、WM_RBUTTONUP 、WM_KEYDOWN都是鼠标消息D对话框、图标、菜单、光标等在VC 中都可以是作为资源来处理18. 下列哪些是有关构造函数的错误说法 ( ) A.构造函数名与类名一样 B.构造函数在说明类对象时自动执行C.构造函数无任何函数类型 D.构造函数有且只有一个19. 下面有关重载函数的说法中正确的是()A. 重载函数必须具有不同的返回值类

8、型;B. 重载函数形参个数必须不同;C. 重载函数必须有不同的形参列表 D. 重载函数名可以不同;20. 当单文档应用框架接收到框架窗口的命令时,它将按如下次序来寻找相应的消息控制函数()A. 视、文档、 SDI 主框架、应用App B. 文档、应用App、视、 SDI 主框架C. 视、文档、应用App、SDI 主框架 D. SDI 主框架、文档、视、应用App 21、下列关于构造函数的描述中,错误的是()A)构造函数可以设置默认参数;B)构造函数在定义类对象时自动执行C)构造函数可以是内联函数; D)构造函数不可以重载22、以下关于友元函数的叙述不正确的是()A)友元函数提供了类之间数据共享

9、的一个途径B)一个友元函数可以访问任何类的任何成员C)友元函数破坏了数据的封装D)友元函数增加了程序设计的灵活性23、下面描述中,表达错误的是()A)公有继承时基类中的public 成员在派生类中仍是public 的B)公有继承时基类中的private 成员在派生类中仍是private 的C)公有继承时基类中的protected成员在派生类中仍是protected 的D)私有继承时基类中的public 成员在派生类中是private 的24、最初的计算机编程语言是( )。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 7 页3 / 7

10、A)机器语言 B)汇编语言 C)高级语言 D)低级语言25、 C 语言中允许的基本数据类型包括( ) A) 整型、实型、逻辑型。 B) 整型、实型、字符型。C) 整型、字符型。 D) 整型、实型、逻辑型、字符型26、 结构化程序设计的一种基本方法是()A) 筛选法B) 递归法C) 归纳法D) 逐步求精法27、 C+语言的跳转语句中,对于break 和 continue 说法正确的是()A) continue 语句只应用与循环体中B) break 语句只应用与循环体中C) break 是无条件跳转语句,continue 不是D) break 和 continue 的跳转范围不够明确,容易产生问题

11、28、友元的作用是( )。A)加强类的封装性 B)提高程序的执行效率C)实现数据的隐藏 D)增加成员函数的种类29、 如果在基类中将show 声明为不带返回值的纯虚函数,正确的写法是()A) virtual show( )=0 。 B) virtual void show( ) 。C) virtual void show( )=0 。 D) void show( )=0 virtual 。30、 C+语言是从早期的C 语言逐渐发展演变而来的.与 C 语言相比,它在求解问题方法上进行的最大改进是()A) 面向过程B) 面向对象C) 安全性D) 复用性31、以下程序的输出结果为:#include

12、void func(int x,int y,int z) z=x*x+y*y。 void main() int k=33 。func(5,2,k) 。countk 。 A)10 B)33 C)29 D) 出错32、 设置虚基类的目的是()。A) 简化程序;B) 消除二义性;C) 提高运行效率;D) 减少目标代码;33、 类的析构函数是在( )调用的。A) 类创建时 B) 创建对象时C) 删除对象时 D) 不自动调用34、假设 MyClass 是一个类,则该类的拷贝构造函数的声明语句为( ) A)MyClass(MyClass p) 。 B) MyClass& (MyClass p) 。C) M

13、yClass(MyClass& p) 。 D) MyClass(MyClass * p) 。35、 关于 delete运算符的下列描述中,()是错误的。A) 它必须用于new 返回的指针;B) 使用它删除对象时要调用析构函数;C) 对一个指针可以使用多次该运算符;D) 指针名前只有一对方括号符号,不管所删除数组的维数。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 7 页4 / 7 36、结构化程序设计所规定的三种基本控制结构是()A)输入、处理、输出B) 树形、网形、环形C) 顺序、选择、循环D)主程序、子程序、函数37、在下列的各类

14、函数中,()不是类的成员函数。A)构造函数;B)析构函数;C)友元函数;D)拷贝初始化构造函数38、下述对派生类的描述中,()是错的。A)一个派生类可以作为另一个派生类的基类B)派生类至少有一个基类C)派生类的成员出除了它自己的成员外,还包含了它的基类的成员。D)派生类中继承的基类成员的访问权限到派生类保持不变。39、静态成员函数没有()。A)返回值B)this 指针C)指针参数D)返回类型40、当执行完下列语句:int hot=100 。 int &rad=hot 。 hot+=100 。 coutradendl 。 输出结果是()。A)0 B)100 C)200 D )300 二、名词解释

15、1. 什么是继承性?2. 简述文档 /视图结构的工作机制?3. 解释“引用”与“指针”的区别?4. 构造函数和拷贝构造函数的功能分别是什么?5. static 局部变量和普通局部变量有什么区别?6. 继承性7.多态性8.抽象性9.重载10.封装性三、综合题1. 写出下列程序的输出结果()(程序阅读题)#include class AA public: AA(int i,int j) A=i 。B=j。coutConstructorn 。 AA(AA &obj) A=obj.A+1 。B=obj.B+2 。 coutCopy_Constructorn 。 AA() coutDestructorn

16、。 void print() coutA=A,B=Bprint() 。 delete pa。 2. 阅读下面程序,写出运行结果() (程序阅读题)#include class Sample int n。static int sum。public: Sample(int x)n=x 。 void add()sum+=n 。 void disp()coutn=n,sum=sumendl。 。int Sample:sum=0 。void main() Sample a(2),b(3),c(5) 。a.add()。 b.add()。 c.add()。 a.disp()。 b.disp()。 c.dis

17、p()。 3. 阅读下面程序,写出运行结果()(程序阅读题)#include class A public: virtual void fun() coutA:fun()endl。 。class B: public A public: void fun() coutB:fun()endl。 。class C: public B public: void fun() coutC:fun()fun() 。 void main() A a, *p 。 B b。C c。p=&a 。 f(p) 。p=&b 。 f(p) 。p=&c 。 f(p) 。 4. 阅读下面程序,写出运行结果() (程序设计题)#

18、include class Test private: int i。static int k 。public: 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 7 页6 / 7 Test()。void Display() 。int Test:k=0。Test:Test() i=0。k+。 void Test:Display() couti=i,k=kendl。 void main() Test a,b。a.Display() 。b.Display() 。 5. 阅读下面程序,写出运行结果() (程序设计题)#include void f

19、2(int &x, int &y) int z = x 。 x = y。 y = z。 void f3(int *x, int *y) int z = *x 。 *x = *y 。 *y = z 。 void main() int x, y 。x = 10。 y = 26。cout x,y= x , y endl。f2(x, y) 。cout x,y= x , y endl。f3(&x, &y) 。cout x,y= x , y endl。x+。 y-。f2(y, x) 。cout x,y= x , y endl。 6.下列 shape 类是一个表示形状的抽象类,area( )为求图形面积的函数。请从shape 类派生三角形类(triangle)、矩形类( rectangle),请给出两个类中必要的成员变量和成员函数的定义,其中必须含有具体的求面积函数。(程序设计题)class shape public: virtual float area( )=0 。 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 7 页7 / 7 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 7 页

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

当前位置:首页 > 技术资料 > 技术总结

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

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