OOP技术:面向对象程序设计期末复习指导.doc

上传人:hw****26 文档编号:3068410 上传时间:2019-05-19 格式:DOC 页数:24 大小:152KB
下载 相关 举报
OOP技术:面向对象程序设计期末复习指导.doc_第1页
第1页 / 共24页
OOP技术:面向对象程序设计期末复习指导.doc_第2页
第2页 / 共24页
OOP技术:面向对象程序设计期末复习指导.doc_第3页
第3页 / 共24页
OOP技术:面向对象程序设计期末复习指导.doc_第4页
第4页 / 共24页
OOP技术:面向对象程序设计期末复习指导.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、OOP 技术:面向对象程序设计期末复习指导面向对象程序设计课程系中央电大开放教育本科计算机科学与技术专业统设必修课程,本课程的期末复习以中央电大下发的资料和网上复习指导为准。为了加强期末复习,下面市电大给出一套综合练习题,仅作参考。综合练习题一、单选题1、 C+源程序文件的默认扩展名为( )。A:cpp B:exe C:obj D:lik2、 用 new 运算符创建一个含 10 个元素的一维整型数组的正确语句是( )。A: int *p=new a10;B: int *p=new float10;C: int *p=new int10;D: int *p=new int10=1,2,3,4,5

2、3、 假定有“struct BOOKchar title40; float price; BOOK *book=new BOOK;”,则正确的语句为( ) 。A: strcpy(*book)-title,”Wang Tao”);B: strcpy(*book.title,”Wang Tao”);C: strcpy(book-title,”Wang Tao”);D: strcpy(book.title,”Wang Tao”);4、 假定指针变量 p 定义为“int *p=new int30;” ,要释放 p 所指向的动态内存,应使用语句( ) 。A: delete p;B: delete *p;

3、C: delete D: delete p;5、 关于消息,下列说法中不正确的是( ) 。A: 发送消息的对象请求服务,接受消息的对象提供服务B: 消息的发送者必须了解消息的接收者如何相应消息C: 在 C+中,消息的发送具体体现为对接收消息的对象的某个函数的调用D: 每个对象只能接收某些特定格式的消息6、 对于任一个类,用户所能定义的析构函数的个数至多为( )。A: 0 B: 1 C: 2 D: 任意个7、 do 语句能够改写为( )语句。A: 复合 B: if C: switch D: while8、 假定 AA 为一个类,a 为该类公有的数据成员,x 为该类的一个对象,则访问 x 对象中数

4、据成员 a 的格式为( ) 。A: x(a) B: xa C: x-a D: x.a9、 假定 AA 为一个类,a 为该类私有的数据成员,GetValue()为该类公有函数成员,它返回 a 的值,x 为该类的一个对象,则访问 x 对象中数据成员 a 的格式为( ) 。A: x.a B: x.a() C: x-GetValue() D: x.GetValue()10、 假定 AB 为一个类,则( )为该类的拷贝构造函数的原型说明。A: AB(AB x); B: AB(AB C: void AB(AB D: AB(int x);11、 关于运算符重载,下列说法正确的是( ) 。A: 重载时,运算符

5、的优先级可以改变。B: 重载时,运算符的结合性可以改变。C: 重载时,运算符的功能可以改变。D: 重载时,运算符的操作数个数可以改变。12、 下列对派生类的描述中错误的说法是:( ) 。A: 派生类至少有一个基类B: 派生类可作为另一个派生类的基类C: 派生类除了包含它直接定义的成员外,还包含其基类的成员D: 派生类所继承的基类成员的访问权限保持不变13、 C+程序的基本模块为( ) 。A: 语句 B: 函数 C: 表达式 D: 标识符14、 以下叙述中不正确的是( ) 。A: 在一个函数中,可以有多条 return 语句B: 函数的定义不能嵌套,但函数的调用可以嵌套C: 函数必须有返回值D:

6、 不同的函数中可以使用相同名字的变量15、 文件包含命令中被包含的文件的扩展名( ) 。A: 必须是.h B: 不能是.h C: 可以是.h 或.cpp D: 必须是.cpp16、 软件产品可被全部或部分地再用于新的应用的能力叫做软件的( ) 。A: 可维护性 B: 可复用性 C: 兼容性 D: 正确性17、 假定一个类的构造函数为 “A(int aa, int bb) a=aa; b=aa*bb;”,则执行 “A x(4,5);”语句后, x.a 和 x.b 的值分别为( )。A: 4 和 5 B: 5 和 4 C: 4 和 20 D: 20 和 518、 派生类的对象对其基类中( )可直接

7、访问。A: 公有继承的公有成员B: 公有继承的私有成员C: 公有继承的保护成员D: 私有继承的公有成员19、 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )符号作为分隔符。A: 空格或逗号 B: 逗号或回车C: 逗号或分号 D: 空格或回车20、 假定有定义“int b10; int *pb;” ,则不正确的赋值语句为( ) 。A: pb=b5; B: *pb=new int;C: pb= D: pb=b;21、 假定变量 a 和 pa 定义为“double a10, *pa=a;” ,要将 12.35 赋值给 a 中的下标为 5 的元素,不正确的语句是( ) 。A: pa5

8、=12.35; B: a5=12.35;C: *(pa+5)=12.35; D: *(a0+5)=12.35;22、 关于面向对象系统分析,下列说法中不正确的是( ) 。A: 术语“面向对象分析”可以用缩写 OOA 表示B: 面向对象分析阶段对问题域的描述比实现阶段更详细C: 面向对象分析包括问题域分析和应用分析两个步骤D: 面向对象分析需要识别对象的内部和外部特征23、 在 C+程序中使用的 cin 标识符是系统类库中定义的( )类中的一个对象。A: istream B: ostreamC: iostream D: fstream24、 假定 AB 为一个类,则执行 “AB *px=new

9、ABn;”语句时将( )。A: 动态分配一个数组B: 动态分配一个对象C: 静态分配一个数组D: 静态分配一个对象25、在下面循环语句中循环体执行的次数为( ) 。int i=0,s=0; while(svoid f4(int a, int n, intfor(int i=0; ivoid main() int a10=76,83,54,62,40,75,90,92,77,84;int b4=60,70,90,101;int c4=0;for(int i=0;i=bj) j+;cj+;for(i=0;iclass A int *a;public:A(int x=0):a(new int(x)A

10、() delete a;int getA() return *a;void setA(int x) *a=x;void main() A x1,x2(3);A *p=p-setA(x2.getA()+5);x1.setA(15+x1.getA();cout#include class Point int x,y;public:Point(int x1=0, int y1=0) :x(x1), y(y1) coutint a=5;void main() int b=a+20;int a=10;coutint f1(int x, int y)x=x+y; y=x+y;coutclass Franc

11、tion /定义分数类int nume; /定义分子int deno; /定义分母public:/把*this 化简为最简分数,具体定义在另外文件中实现void FranSimp(); /返回两个分数*this 和 x 之和,具体定义在另外文件中实现Franction FranAdd(const Franction/置分数的分子和分母分别 0 和 1void InitFranction() nume=0; deno=1;/置分数的分子和分母分别 n 和 dvoid InitFranction(int n, int d) nume=n; deno=d;/输出一个分数void FranOutput

12、() coutclass Point int x,y;public:Point(int x1=0, int y1=0) :x(x1), y(y1) coutconst int M=20;void main()int c2,c3,c5;c2=c3=c5=0;for(int i=1; iconst int B=2;void main()int p=1,s=1;while(svoid main()char s35=“1234“,“abcd“,“+-*/“; char *p3; for(int I=0;I=0;I-) cout#include class CD char* a;int b;public

13、:void Init(char* aa, int bb)a=new charstrlen(aa)+1;strcpy(a,aa);b=bb;char* Geta() return a;int Getb() return b;void Output() coutclass Datepublic:Date(int y=2001,int m=1,int d=1)Year=y; Month=m; Day=d;void PrintDate() coutYear“/“Month“/“Dayendl;protected:int Year,Month,Day;class Timepublic:Time(int

14、h=5,int m=30,int s=0)Houre=h; Minutes=m; Seconds=s;void PrintTime() coutHoure“:“Minutes“:“Secondsendl;protected:int Houre, Minutes, Seconds;class Date_Time: public Date, public Timepublic:Date_Time( );Date_Time(int y,int mo,int d,int h=0,int mi=0,int s=0):Date(y,mo,d), Time(h,mi,s)void PrintDate_Time()PrintDate();PrintTime();void main( )

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

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。