面向对象程序设计复习题专科.doc
《面向对象程序设计复习题专科.doc》由会员分享,可在线阅读,更多相关《面向对象程序设计复习题专科.doc(14页珍藏版)》请在咨信网上搜索。
面向对象程序设计复习题 专科 一、 单项选择题 1. 在类定义之外定义成员函数时, 下列哪些说法是正确的( ) 。 A. 必须在函数名之前加上类名和作用域符 B. 类的成员函数不可重载 C. 类定义中能够不声明该函数 D. 函数名前作用域符课省略 2. 多重继承的构造顺序一般可分为4步, 下面给出这4个步骤: step1: 任何非虚拟基类的构造函数按照它们被继承的顺序构造。 step2: 任何虚拟基类的构造函数按照它们被继承的顺序构造。 step3: 任何成员对象的构造函数按照它们声明的顺序构造。 step4: 类自己的构造函数。 这4个步骤的正确顺序是( ) 。 A. step4、 step3、 step1、 step2 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. 当用户进行鼠标操作时, 释放鼠标左键会发出( ) 消息。 A.WM_lBUTTONDOWN B.WM_lBUTTONUP C.WM_lBUTTONBLOCK D.WM_RBUTTONUP 6. 下面描述中, 表示错误的是( ) 。 A. 公有继承时基类中的public成员在派生类中仍是public的 B. 公有继承是基类中的private成员在派生类中仍是private的 C. 公有继承时基类中的protected成员在派生类中仍是protected的 D. 私有继承时基类中的public成员在派生类中是private的 7. 能够用p.a的形式访问派生类对象p的基类成员a, 其中a是什么成员( ) A. 私有继承的公有成员 B. 公有继承的私有成员 C. 公有继承的保护成员 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. 在 ( ) 情况下适宜采用 inline 定义内联函数。 A. 函数体含有循环语句 B. 函数体含有递归语句 C. 函数代码少、 频繁调用 D. 函数代码多、 不常调用 11. 在下列叙述中, 不是Windows程序的特点是( ) A.Windows程序经过窗口与用户进行交互。 B.Windows程序是应用事件驱动进行编程。 C.Windows程序是利用消息进行通信。 D.Windows程序是利用过程驱动的程序。 12. 设置虚基类的目的是( ) 。 A. 简化程序; B. 消除二义性; C. 提高运行效率; D. 减少目标代码; 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. 指针名前只有一对方括号符号, 不论所删除数组的维数。 17. 在下列叙述中, 叙述错误的是( ) A.Windows应用程序与控制台(Console)程序的入口函数不同。 B.在基于MFC编写的程序中, 其类大部分都是由CObject类派生出来 C.WM_LBUTTONDOWN、 WM_RBUTTONUP、 WM_KEYDOWN都是鼠标消息 D.对话框、 图标、 菜单、 光标等在VC中都能够是作为资源来处理 18. 下列哪些是有关构造函数的错误说法 ( ) A.构造函数名与类名一样 B.构造函数在说明类对象时自动执行 C.构造函数无任何函数类型 D.构造函数有且只有一个 19. 下面有关重载函数的说法中正确的是( ) A. 重载函数必须具有不同的返回值类型; B. 重载函数形参个数必须不同; C. 重载函数必须有不同的形参列表 D. 重载函数名能够不同; 20. 当单文档应用框架接收到框架窗口的命令时, 它将按如下次序来寻找相应的消息控制函数( ) A. 视、 文档、 SDI主框架、 应用App B. 文档、 应用App、 视、 SDI主框架 C. 视、 文档、 应用App、 SDI主框架 D. SDI主框架、 文档、 视、 应用App 21、 下列关于构造函数的描述中, 错误的是( ) A)构造函数能够设置默认参数; B)构造函数在定义类对象时自动执行 C)构造函数能够是内联函数; D)构造函数不能够重载 22、 以下关于友元函数的叙述不正确的是( ) A) 友元函数提供了类之间数据共享的一个途径 B) 一个友元函数能够访问任何类的任何成员 C) 友元函数破坏了数据的封装 D) 友元函数增加了程序设计的灵活性 23、 下面描述中, 表示错误的是( ) A) 公有继承时基类中的public成员在派生类中仍是public的 B) 公有继承时基类中的private成员在派生类中仍是private的 C) 公有继承时基类中的protected成员在派生类中仍是protected的 D) 私有继承时基类中的public成员在派生类中是private的 24、 最初的计算机编程语言是( )。 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的跳转范围不够明确, 容易产生问题 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<iostream.h> void func(int x,int y,int z) {z=x*x+y*y;} void main() { int k=33; func(5,2,k); count<<k; } 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) MyClass(MyClass& p); D) MyClass(MyClass * p); 35、 关于delete运算符的下列描述中, ( ) 是错误的。 A) 它必须用于new返回的指针; B) 使用它删除对象时要调用析构函数; C) 对一个指针能够使用多次该运算符; D) 指针名前只有一对方括号符号, 不论所删除数组的维数。 36、 结构化程序设计所规定的三种基本控制结构是( ) A) 输入、 处理、 输出 B) 树形、 网形、 环形 C) 顺序、 选择、 循环 D) 主程序、 子程序、 函数 37、 在下列的各类函数中, ( ) 不是类的成员函数。 A) 构造函数; B) 析构函数; C) 友元函数; D) 拷贝初始化构造函数 38、 下述对派生类的描述中, ( ) 是错的。 A) 一个派生类能够作为另一个派生类的基类 B) 派生类至少有一个基类 C) 派生类的成员出除了它自己的成员外, 还包含了它的基类的成员。 D) 派生类中继承的基类成员的访问权限到派生类保持不变。 39、 静态成员函数没有( ) 。 A) 返回值 B) this指针 C) 指针参数 D) 返回类型 40、 当执行完下列语句: int hot=100; int &rad=hot; hot+=100; cout<<rad<<endl; 输出结果是( ) 。 A) 0 B) 100 C) 200 D) 300 二、 名词解释 1. 什么是继承性? 2. 简述文档/视图结构的工作机制 ? 3. 解释”引用”与”指针”的区别? 4. 构造函数和拷贝构造函数的功能分别是什么? 5. static局部变量和普通局部变量有什么区别? 6. 继承性 7.多态性 8.抽象性 9.重载 10.封装性 三、 综合题 1. 写出下列程序的输出结果( ) ( 程序阅读题) #include <iostream.h> class AA { public: AA(int i,int j) {A=i;B=j;cout<<"Constructor\n";} AA(AA &obj) {A=obj.A+1;B=obj.B+2;cout<<"Copy_Constructor\n";} ~AA() {cout<<"Destructor\n";} void print() {cout<<"A="<<A<<",B="<<B<<endl; } private: int A,B; }; void main() { AA a1(2,3); AA a2(a1); a2.print(); AA *pa=new AA(5,6); pa->print(); delete pa; } 2. 阅读下面程序, 写出运行结果( ) ( 程序阅读题) #include <iostream.h> class Sample { int n; static int sum; public: Sample(int x){n=x;} void add(){sum+=n;} void disp(){cout<<"n="<<n<<",sum="<<sum<<endl;} }; int Sample::sum=0; void main() { Sample a(2),b(3),c(5); a.add(); b.add(); c.add(); a.disp(); b.disp(); c.disp(); } 3. 阅读下面程序, 写出运行结果( ) ( 程序阅读题) #include <iostream.h> class A { public: virtual void fun() { cout<<"A::fun()"<<endl; } }; class B: public A { public: void fun(){ cout<<"B::fun()"<<endl; } }; class C: public B { public: void fun() { cout<<"C::fun()"<<endl; } }; void f(A *p) { p->fun(); } void main() { A a, *p; B b; C c; p=&a; f(p); p=&b; f(p); p=&c; f(p); } 4. 阅读下面程序, 写出运行结果( ) ( 程序设计题) #include <iostream.h> class Test {private: int i; static int k; public: Test(); void Display(); }; int Test::k=0; Test::Test() { i=0; k++; } void Test::Display() { cout<<"i="<<i<<",k="<<k<<endl; } void main() { Test a,b; a.Display(); b.Display(); } 5. 阅读下面程序, 写出运行结果( ) ( 程序设计题) #include <iostream.h> void f2(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; };- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 复习题 专科
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文