面向对象程序设计网上教学活动文本200447_第1页
面向对象程序设计网上教学活动文本200447_第2页
面向对象程序设计网上教学活动文本200447_第3页
面向对象程序设计网上教学活动文本200447_第4页
面向对象程序设计网上教学活动文本200447_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象程序设计网上教学活动文本(2004.4.7)问:考试是开卷还是闭卷?考试的具体范围? 徐孝凯:今年以后要改为闭卷了,范围还是见期末复习指导、或新考核说明、或考试文件通知。 问:怎样学好面向对象程序设计这一门课程?徐孝凯:首先从基本概念入手,一定要弄清基本思想,然后要多上机实践。问:在新版本的教材中没有讲到模板的内容,但作业中又有这样的内容。这样我们在教学中不得不讲,请问在考试中是否也考呢? 徐孝凯:这个教材模板内容不多,这部分比较难,所以不做重点要求,你们可以根据学生学习具体情况掌握。让学生有点基本的认识就可以了。将来在数据结构课程里可能有更多应用实例,会加深对它的理解。 另外,在实验

2、教材中作了补充,请参考。问:面向对象程序设计学习中应注意那些方面? 徐孝凯:基本概念要弄清楚。比如类。在此基础上多实践,多上机。问:有很多学员反映面向对象程序设计的教材的编排或者说内容的安排不是很好,对于学员的自主学习不是很适合,要学好这门课程还必须参照其他的资料,我们作为教师怎么处理呢? 徐孝凯:我们很愿意听到有关教材的修改意见,今后有机会再版我们修订,作为大学生的学习教材,不应该以唯一的一本书作为教材,除了主教材之外,同学们可以更广泛的参阅其它的参考书,取长补短,深化理解。 请主要参考实验教材。问:请举例讲解静态数据成员的需要性好吗? 唐龙:静态数据可以确保留存本次调用该函数时候所得到的结

3、果,可作为下一次使用的初始值,不会丢失。徐孝凯:关于学习面向对象课程问题 1. 该课程介绍VC+6.0语言的语法和程序设计;2. 学习主教材的同时,学习好实验教材中每个实验的预备知识部分;3. 认真按实验教材的要求作好每个实验;4. 按中央电大教育杂志社的每学期出版发行的该课程期末复习指导的要求搞好复习;5. 按中央电大教育杂志社的每学期出版发行的该课程作业练习册,认真作好作业;6. 到期末复习阶段,认真复习好实验教材附录中给出的综合练习题;7. 到期末复习阶段,练习一下往届的试卷。 问:很多人都说C+程序设计这门课程比较难学,有没有什么好的学习方法?C+程序设计的难点在哪几个章节?唐龙:C的

4、最大难点就在于掌握类的概念,但是它正是c具有很强生命的基础。要围绕类的概念及其应用,多下功夫。 问:如何理解类? 唐龙:类本身是一些实例的抽象,它定义了一种数据类型,既包括有数据成员,又包括对数据的操作。使得C语言具有强有力的特性,封装,重载,继承等特性。问:怎样理解虚函数? 唐龙:这个问题不是几句话说清楚的,请参阅教材。 徐孝凯:除了参考主教材中有关内容外,请认真参考实验教材中的实验九内容 问:徐老师,C+的语句是说明和定义语句,表达式语句其它还有什么? 徐孝凯:还有分支、循环、返回等语句。 问:怎样理解多态性? 徐孝凯:请参考实验教材中的实验九内容。 问:i+和+i在和指针连用时怎样理解请

5、举例讲解? 徐孝凯:*p+表示先取p所指向的单元内容,后使p加1,即p指向了下一个单元;而*+p表示先使p指向下一个单元,然后取该单元的值。具体请参看实验教材中的实验五。 唐龙:int i=0,j=0,k=0;j=+i+1;cout<<"i="<<i<<"j="<<j<<endl; /这个结果应当是i1;j2;如果我们改成下面的表达式j=(i+)+1;cout<<"i="<<i<<"j="<<j<<

6、;endl; /这个结果应当是i1;j1;问:以后我们毕业的时候要写论文吗? 徐孝凯:肯定要做毕业设计,占10学分,具体由地方电大届时安排。 问:湖南常德电大在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用语句。 徐孝凯:ip=new int10;请参考实验教材中的实验五。 问:怎样来理解模板的内容?谢谢! 唐龙:为函数或者类提供一个能自动生成适用于指定的某种不同数据类型的函数或者类。 问:老师:我以前学的是机械专业,没有学过C+,象我这样的情况怎样才能学好这门课程呢? 徐孝凯:这个课主要内容就是C,你就按照课程的教学计划认真学就行了。 问:在进行指针运算时,

7、要注意些什么?哪些地方容易出现错误?唐龙:最重要指针要经过初始化才能使用,其次指针本身也是一个变量,不同数据类型的指针是应看作不同的数据类型,因为不同数据类型占用的内存空间是不一样的,所以指针移动一个位置所造成的内存地址的变化也是不一样的。 问:徐老师,上次洛阳会议一别,很高兴网络又使我们相见了。我是湖南电大这门课的责任教师。学生反映,面向对象程序设计学生学习感觉比较困难,除了基础较差之外,这门课程与实际应用联系不大。我觉得可以参照软件开发工具与环境(VC+)这门课的形式,让学生有一种看得见的感觉。很可惜这门课是门选修课,很多学生怕难没有选。到了毕业设计的时修,又为没有熟悉的开发工具而苦恼。建

8、议实验教材可以参照采用一些简单的软件开发工具与环境的例子,提高学生的学习性趣徐孝凯:你的建议很好,若用C+语言环境开发Windows应用程序,至少要在面向对象程序设计课程之后再开一门VC+编程与应用的课程,你说的软件开发工具与环境课程的教材,我看过,编写的不太好,请安排省开课,到社会上选择实用性和可读性好的教材使用。 问:考试题型是什么? 徐孝凯:请参考已经帖出的网届试卷,6月份后看该课程期末复习指导。 问:我想问一下,关于C+的数据在计算机中是怎么保存的? 徐孝凯:数据到转换为二进制保存。问:怎么用指针来编程?徐孝凯:请参考实验教材中的实验五。 问:业余班学生在学习面向对象的时候,总感实验不

9、足,难理解书本内容。如何补救? 徐孝凯:请按实验教材做好每个实验。 问:c+的引用我不太懂,您有有关的资料吗? 徐孝凯:请参考实验教材中的实验六。问:如何理解封装?封装的好处是什么? 唐龙:封装是c重要的特性,将操作和数据封装成类,才能实现面向对象这样一个思想,封装本身还保证了数据的安全性。 问:期末考试重点是那几章? 徐孝凯:期在期末复习期间按实验教材附录所给的综合练习题搞好复习。 问:唐老师、徐老师、李老师:你们辛苦了,我是长沙电大计算机专业责任教师,主讲面向对象程序设计,我觉得这本教材编得非常好,适合学生自学,对于在专科阶段学过C+程序设计的同学来说是没有问题的,但对于以前是非计算机专业

10、的学生来说还是有一定的困难。对于这门课程的教学,请你们提出一些建议,以使我们更好地搞好教学工作。徐孝凯:谢谢你。在课程教学上,建议结合实验教材教学。 问:十分感谢徐老师,对于这门课程的考试,去年上半年是开卷,下半年是闭卷,请问这是全国统一,还是由省校来定? 徐孝凯:从去年下半年开始以后都该为闭卷,具体按考试通知上的规定办。 问:怎么用程序过程编程?徐孝凯:通过头文件使用。问:我们的毕业设计的开发工具必须是C+吗?程序设计的发展趋势是面向对象还是面向过程? 徐孝凯:毕业设计可以选择任何题目,使用任何开发工具,如C+,JAVA,VB等。问:在C+中“消息”是通过什么机制在“对象”中传递的? 徐孝凯

11、:通过函数调用。 问:函数或者类提供一个能自动生成适用于指定的某种不同数据类型的函数或者类。徐孝凯:不能,需编程得使用模板类。问:与往年比较,今年考试的难易程度相同吗? 徐孝凯:差不多。请参考关于学习面向对象课程问题的帖子。 问:怎么用它编程啊?徐孝凯:参看教材,包括实验教材。问:得面对对象程序设计和vfoxpro有区别吗? 徐孝凯:C+是进行单值的程序设计,VP是面向集合的数据库设计。 问:面向对象的程序设计应尽量使用什么继承? 徐孝凯:一般使用单继承。问:若只需要通过一个成员函数读取数据成员的值,而不需要修改它,则应在函数头的后面加上一个什么关键字? 徐孝凯:const问:在本科教学中,我

12、认为要以面向对象程序设计为基本工具,开展相应的教学,包括数据结构的实验,选修软件开发工具与环境(VC+)用VC进行课程设计和毕业设计,以一门语言为突破口,让学生反复练习,在理论和实际应用能力都能得到提高。 徐孝凯:对的,需要同清华统一看法,并付诸实施。 问:可否举例说明一下宏替换的使用? 徐孝凯:看教材。问:面向过程与面向对象的区别和联系?徐孝凯:看教材。计算机科学与技术专业面向对象程序设计(本科)2003年作业练习参考解答第一次作业一、单项选择题1. A 2. B 3. A 4. D 5. D 6. B 7. B 8. C 9. C 10. C 11. C 12. C 13. D 14. B

13、 15. C 16. B 17. B 18. B 二、填空题1. .cpp 程序文件 2. cout 3. 空白 4. 分号 (;)5. 原型(或声明) 6. void 7. 4 11 8. 0xF5 (F大小写均可) 9. 4 8 10. 15 11. 1 3 12. true (或1) 13. false(或0) 14. 3*x*y/(x+y) 15. 4 2 16. 6 60 17. 0 19 18. 35三、程序填充题1. (1) n<=99 (2) i<=temp (3) break2. (1) b%i=0 (2) i+ (或+i) (3) b>=i3. (1) v

14、oid fun(char ss) (2) fun(s) (3) i<n/2四、写出程序运行结果1. 1 2 3 5 8 13 21 34 55 892. 11 14 switch end.3. 10 6 4五、指出程序或函数的功能1. 计算并输出22+42+62+L+302的值。2. 计算并输出1+的值,其中a的值由键盘输入。六、程序改错题1.错误行的行号为:5 7 8分别改正为:b.InitFranction(1,3); c=a.FranAdd(b); c.FranOutput()七、编程题1. #include<iostream.h> void main() int i;

15、 /用i作为循环变量 int p=1; /用p作为累乘变量 int s=1; /用s作为累加循环变量 for(i=1;i<=10;i+) p*=3; s+=p; cout<<s<<endl; 2. #include<iostream.h> void main() int x,max; cin>>x; max=x; for(int i=0;i<9;i+) cin>>x; if(x>max) max=x; cout<<"max:"<<max<<endl; 3. #i

16、nclude<iomanip.h> void main() int c1,c2,c3; double x; c1=c2=c3=0; cin>>x; while(x>0) if(x<=12) c1+; else if(x<=15) c2+; else c3+; cin>>x; cout<<c1<< <<c2<< <<c3<<endl; 第二次作业一、单项选择题1. A 2. D 3. C 4. B 5. A 6. B 7. C 8. B 9. C 10. C 11. A

17、12. A 13. C 14. A 15. B 16. A 17. D 二、填空题1. switch 2. break 3. 主(或main) 4. 1 2 5. 11 6. 10 19 7. strcpy 8. static 9. 虚拟类型(或类型) 10. static 11. 头文件 12. 代码区 13. i*m+j+1 14. 4 15. int* 16. 25 17.42 18. 第一个 修改三、程序填充题1. (1) x/2 (2) x!=0 (3) cout<<ak2. (1) (low+high)/2 (2) return mid (3) low=mid+13.

18、(1) i<n (2) tablei (3) L=p四、写出程序运行结果1. +*+*2. 10 1 -6 4 0 -3 6 -6 -93. x,y=10, 26 x,y=26, 10 x,y=10, 26 x,y=25, 11五、指出程序或函数的功能1. 计算并输出的值,其中N值由键盘输入。2.2. 实现字符串系统函数strcpy的功能,把b所指的字符串拷贝到a所指的字符数组空间中。六、程序改错题1. 错误行的行号为: 5 9 12 分别改正为: public: int CE:GetMin()七、编程题1 int f(int a,int n) if(n=0) return 0; els

19、e return an-1*an-1+f(a,n-1); 2 void p(int n) if(n!=0) p(n-1); for(int i=0; i<n; i+) cout<<n; cout<<endl; 3 int AA:MaxMin(int& x, int& y) int mx,my; mx=my=a0; for(int i=1; i<n; i+) if(ai>mx) mx=ai; if(ai<my) my=ai; x=mx; y=my; if(n>0) return 1; else return 0; 第三次作业一

20、、单项选择题1. B 2. B 3. B 4. A 5. D 6. C 7. D 8. C 9. C 10. D 11. C 12. A 13. B 14. B 15. D 16. C 17. C 18. D 二、填空题1. *p 2. int(*)6 3. X 4. a 5. delete p6. ple 7. (*p).name 8. 6 9. 对象 10. 聚合11. 多继承 12. 设计 实现 13. private或私有 14. private 15. 冒号16. 不在 17. *this 18. 队列长度 19. (first+1)%MS三、程序填充题1 (1) int&

21、ARRAY: (2) n>=s (3) vn (或*(v+n)2 (a) AA:MaxA() (b) x=ai (c) return x3 (a) x.SetA(a,6) (b) x.MaxA() (c) x.PrintA() 四、写出程序运行结果1 2 1 5 22 +-*/ abcd 12343 12 20五、指出程序或函数的功能1 对于二维字符数组a中保存的M个字符串,分别统计并输出其长度小于5、大于等于5且小于15、大于等于15的字符串个数。2 实现strcat函数的功能,把str2所指字符串连接到str1所指字符串的后面,并返回str1指针。六、程序改错题1 错误行的行号为:1

22、3 15 17 错误原因分别为:在函数体给常量c赋值 缺少分号 定义z多一个参数七、编程题1 int AA:CompareBig(AA b) int k; if(n>b.n) k=b.n; else k=n; for(int i=0; i<k; i+) if(ai>b.ai) return 1; else if(ai<b.ai) return -1; if(k=n && k=b.n) return 0; else if(k<n) return 1; else return -1; 2 Array:Array(int aa, int nn) n=nn

23、; a=new intn; for(int i=0; i<n; i+) ai=aai; 3 Array& Array:Give(Array& aa) delete a; n=aa.n; a=new intn; for(int i=0; i<n; i+) ai=aa.ai; return *this; 第四次作业一、单项选择题1. C 2. D 3. B 4. C 5. C 6. C 7. A 8. C 9. B 10. A 11. D 12. A 13. A 14. B 15. C 16. C 17. C 18. D二、填空题1. 插入 2. ElemHead-&g

24、t;next 3. 相同 4. 析构5. 无参构造函数 6. 10 7. 初始化表 8. int& aa;9. 不会 10. 2 11. 3 12. 错误13. 只能 不能 14. 优先级 15. 2 16. istream &17. 返回值 空 18. 公有和保护 任何 19. 二义性三、程序填充题1. (a) int Stack:Pop() (b) elemtop- (c) Pop()2. (a) a=new intMaxLen (b) return ai; (c) s+=r.GetValue(i)3. (1) Base:output() (2) Base(m1,m2) (

25、3) mem3=m3四、写出程序运行结果1. a: 6/15 b: 3/10 c: 7/10 d: 11/102. 5 6 9 203. 2000/1/1 0:0:0 2002/10/1 23:59:59 2002/12/31 0:0:04. 10,20,30,40 15,26,30,40 15,26,210,280五、指出程序或函数的功能1. 统计出以表头指针为f的链表中结点的个数。2. 求出并返回字符指针参数s所指向的字符串长度。六、程序改错题1. 错误行的行号为 2 和5 分别改正为friend fract &operator+=(fract&,fract); 和 fra

26、ct &operator+=(fract &f1,fract f2);七、编程题1. Strings:Strings(Strings& str) n=str.n; s=new charn+1; strcpy(s,str.s); 2. class A_class private: int x,y,t; public: A_class(int i,int j):x(i),y(j) if(y>x)t=x;x=y;y=t; /其它函数从略 friend int Variance (A_class& ac); /参数名任意 ; int Variance (A_cla

27、ss& ac) return ac.x*ac.x-ac.y*ac.y; void main() A_class A_obj(3,5); cout<<"Result:"<<Variance(A_obj)<<endl; 3.Circle(float rad):rad(rad)Circle() float GetPerimeter() return 2*PI*rad; /计算圆形周长 float GetAre() return PI*rad *rad; /计算圆形面积中央广播电视大学计算机科学与技术专业面向对象程序设计试题(2)2003

28、年5月题 号一二三四五六七总 分得 分一、单项选择(每小题1分,12小题,共12分) 1. 由C+源程序文件编译而成的目标文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. lik 2设x和y均为bool量,则x && y为真的条件是( )。 A. 它们均为真 B. 其中一个为真 C. 它们均为假 D. 其中一个为假 3. 在下面的二维数组定义中,正确的是( )。 A. int a5; B. int a5; C. int a3=1,3,5,2; D. int a(10); 4. 以下正确的说法是( )。 A. 用户调用标准库函数前,必须重新定义 B. 用

29、户可以重新定义标准库函数,若如此,该函数将失去原有含义 C. 系统不允许用户重新定义标准库函数 D. 用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中 5. 文件包含命令中被包含的文件的扩展名( )。 A. 必须是.h B. 不能是.h C. 可以是.h或.cpp D. 必须是.cpp 6. 要使语句“p=new int1020;”能够正常执行,p应定义为( )。 A. int *p; B. int *p; C. int *p20; D. int(*p)20; 7. 软件产品准确执行软件需求规格说明书中所规定的任务的能力叫做软件的( )。 A. 可维护性 B. 可复用

30、性 C. 兼容性 D. 正确性 8. 假定AA为一个类,a为该类私有的数据成员,若要在该类的一个成员函数中访问它,则书写格式最好为( )。 A. a B. AA:a C. a() D. AA:a() 9. 队列具有( )的操作特性。 A. 先进先出 B. 先进后出 C. 进出无序 D. 仅进不出 10. 当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够存储( )个整数。 A. n B. n+1 C. n-1 D. 1 11. 假定AB为一个类,则执行 “AB a, b(3), *p;”语句时共调用该类构造函数的次数为( )。 A. 2 B. 3 C.

31、4 D. 5 12. 在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是( )。 A. 作为友元函数重载的1元运算符 B. 作为成员函数重载的1元运算符 C. 作为友元函数重载的2元运算符 D. 作为成员函数重载的2元运算符二、填空(每空1分,14小题,18个空,共18分) 1. C+语言的编译单位是扩展名为_的_文件。 2从一条函数原型语句“int fun1(void);”可知,该函数的返回类型为_,该函数带有_个参数。 3. 假定x是一个逻辑量,则x | false的值为_。 4. 作为语句标号使用的C+保留字case和defaule只能用于_语句的定义体中。 5. 对一个二维字

32、符数组a进行初始化的数据为”123”,”456”,”789”,则a1元素对应的字符串为_。 6. 全局变量和静态局部变量具有静态生存期,存放在内存的_区中。 7. 假定a是一个一维数组,则ai对应的存储地址(以字节为单位)为_。 8. NULL是一个符号常量,通常作为空指针值,它的具体值为_。 9. 面向对象的分析包括_分析和_分析两步。 10. 内联函数的定义模块与_模块必须放在同一个文件中。 11一个类的_函数实现对该类对象的初始化功能。 12假定用户为类AB定义了一个构造函数"AB(int aa=0):a(aa)",则定义该类的对象时,可以有_种不同的定义格式。 13

33、. 重载抽取运算符>>时,其运算符函数的返回值类型应当是_。 14. 若多个基类及其派生类中都定义了同名函数成员,要访问相应函数时,就需要在函数名前加上_和_。三、程序填充。对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面(每小题6分,3小题,共18分) 1. 斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。#include<iostream.h>void main() int f,f1,f2,i; cout<<” 斐波那契数列:n

34、”; f1=0; f2=1; cout<<setw(6)<<f1<<setw(6)<<f2; for(i=3;i<=20;i+) f=_(1)_; cout<<setw(6)<<f;if(_(2)_) cout<<endl;fi=f2;f2=_(3)_; cout<<endl; (1) (2) (3) 2. 假定有定义为“struct NODEint data; NODE* next;”,下面算法根据table数组中的n个元素建立一个表头指针为L的链表,链表中结点值的顺序与数组元素值的顺序相同

35、。void f5(NODE*& L, int table, int n) if(n<=0) L=NULL; return; L=new NODE; /生成附加的头结点 int i=0; NODE* p=L; while(_(1)_) p=p->next=_(2)_; p->data=_(3)_; i+; p->next=NULL; /把最后一个结点的指针域置空 p=L; L=L->next; /使L指向链表的第一个带值的结点 delete p; (1) (2) (3) 3class A int a; public: A() a=0; _(a)_ /定义构造

36、函数,用参数aa初始化数据成员a ; main() _(b)_; /定义类A的指针对象p _(c)_; /用p指向动态对象并初始化为整数5 答案:(a) (b) (c)四、写出程序运行结果(每小题6分,3小题,共18分) 1. #include<iomanip.h> #include<math.h> int a4=36,-5,73,8; void main() int i,y; for(i=0; i<4; i+) if(ai<0) y=1; else if(ai<10) y= ai* ai+3; else if(ai<60) y=4*ai-5;

37、else y=int(sqrt(ai); / sqrt(x)为取x的平方根函数 cout<<setw(5)<<ai<<setw(5)<<y; 2. #include<iostream.h> const int N=5; void fun(); void main() for(int i=1; i<N; i+) fun(); void fun() static int a; int b=2; cout<<(a+=3,a+b)<<' ' 3. #include <iostream.h&g

38、t;class Date public: Date(int y=2001,int m=1,int d=1)Year=y; Month=m; Day=d; void PrintDate() cout<<Year<<"/"<<Month<<"/"<<Day<<endl; protected: int Year,Month,Day;class Time public: Time(int h=5,int m=30,int s=0)Houre=h; Minutes=m; Seconds=s;

39、void PrintTime() cout<<Houre<<":"<<Minutes<<":"<<Seconds<<endl; protected: int Houre, Minutes, Seconds;class Date_Time: public Date, public Time public: 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,

40、mi,s) void PrintDate_Time()PrintDate();PrintTime();void main( ) Date_Time a, b(2002,10,1,6,20,0), c(2003,3,8,6,7); a.PrintDate_Time(); b.PrintDate_Time(); c.PrintDate_Time();五、指出程序或函数的功能(每小题6分,2小题,共12分) 1. #include<iostream.h> #include<math.h> void main() int x,y; cin>>x; y=int(sqr

41、t(x); /sqrt(x)为求x的算术平方根 for(int i=1;i<=y;i+) if(x%i=0) cout<<”x=”<<i<<*<<x/i<<endl; 2. int Count(IntNode *f) if(!f) return 0; int c=0; while(f) c+; f=f->next; return c; 假定IntNode的类型定义为: struct IntNode int data; /结点值域 IntNode* next; /结点指针域 ;六、程序改错。请根据程序段或函数模块的功能改写个

42、别地方的错误(每小题6分,共6分)。 1. 在下面的定义中,NODE是链表结点的结构,addToList则是一函数,其功能是:将一个值为x的新结点添加到以plist为表头指针的链表的首部(即第一个结点的前面)并返回表头指针。函数中第3行和第5行有错误,请分别改正。struct NODE int data; NODE *next; NODE* adndToList(NODE * plist, int x) /1行 NODE *p; /2行 *p=new NODE; /3行 p->data=x; /4行 p->next=NULL; /5行 plist=p; /6行 return p;

43、/7行 分别改正为_和_。七、编程(每小题8分,2小题,共16分) 1. 已知,求出并显示当x分别取-3.8, 6.4, 2.3, -4.2,8.9, 3.5, -5.0, 4.5时所对应的y值,要求把a定义为常量,其值设定为10.2,x的每个值由键盘输入,并假定用-100作为终止标志,求平方根函数为sqrt(x)。 2. 根据下面类中Reverse1函数成员的原型和注释写出它的类外定义。class AA int* a;int n;int MS;public:void InitAA(int aa, int nn, int ms) if(nn>ms) cout<<"E

44、rror!"<<endl; exit(1);MS=ms;n=nn;a=new intMS;for(int i=0; i<n; i+) ai=aai;AA* Reverse1(); /通过动态存储分配得到一个AA类对象,并动态分配 /aMS数组空间,要求该对象中的n和MS的值与*this中的 /对应成员的值相同,数组元素的值是按照*this中数组元 /素的相反次序排列得到的,要求该函数返回动态对象的地址。;中央广播电视大学计算机科学与技术专业面向对象程序设计试题(2)参考解答及评分标准2003年3月一、单项选择(每小题1分,12小题,共12分)1. C 2. A 3. C 4. B 5. C 6. D7. D 8. A 9. A 10. A 11. A 12. B 二、填空(每空1分,14小题,18个空,共18分)1. .cpp 程序 2. int 0 3. x 4. switch 5. ”456

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论