全国2004年10月高等教育自学考试面向对象程序设计试题历年试卷_第1页
全国2004年10月高等教育自学考试面向对象程序设计试题历年试卷_第2页
全国2004年10月高等教育自学考试面向对象程序设计试题历年试卷_第3页
全国2004年10月高等教育自学考试面向对象程序设计试题历年试卷_第4页
全国2004年10月高等教育自学考试面向对象程序设计试题历年试卷_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、 HYPERLINK 做试题,没答案?上自考365,网校名师为你详细解答!全国2004年10月高等教育自学考试面向对象程序设计试题课程代码:02328一、单项选择题本大题共10小题,每题2分,共20分在每题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多项选择或未选均无分。1在面向对象的程序设计中,首先在问题域中识别出假设干个 A函数B类C文件D过程2定义类模板时要使用关键字AconstBnewCdeleteDtemplate3在以下成对的表达式中,运算结果类型一样的一对是A和2B9和92C2和92D92和4f1和f2是同一类的两个成员函数,但f1不能直接调用

2、f2,这说明Af1和f2都是静态函数Bf1是静态函数,f2不是静态函数Cf1不是静态函数,f2是静态函数Df1和f2都不是静态函数5调用一成员函数时,使用动态联编的情况是A通过对象调用一虚函数B通过指针或引用调用一虚函数C通过对象调用一静态函数D通过指针或引用调用一静态函数6假定一个类的构造函数为“A(int aa=1, int bb=0) a=aa; b=bb;, 那么执行“Ax (4);语句后,和的值分别为A1和0B1和4C4和0D4和17在派生类中能够直接访问的是基类的A公有成员和私有成员B保护成员和私有成员C不可访问的和私有的成员D公有成员和保护成员8以下不具有访问权限属性的是A非类成

3、员B类成员C数据成员D函数成员9在类定义中private, protected, public 关键词出现的次数为A任意屡次B至多一次Cpublic至少出现一次D至少一次10C语言鼓励程序员在程序设计时将A数据和操作分别封装B不同类型的数据封装在一起C数据和操作封装在一起D不同作用的操作封装在一起二、填空题本大题共10小题,每题2分,共20分请在每题的空格中填上正确答案。错填、不填均无分。11在用C进展程序设计时,最好用_代替malloc。12函数模板中紧随template之后尖括号内的类型参数都要冠以保存字_。13在ios类中定义的用于控制输入输出格式的枚举常量中,用于代表十进制、八进制和十

4、六进制的3个枚举常量是dec、oct和_。14如果重载了运算符,那么相应的运算符函数名是_。15由static修饰的数据成员为该类的所有对象_。16为了实现多态性,派生类需重新定义基类中的_。17编译时的多态性通过_函数实现。18在派生类中实现基类成员的初始化,需要由派生类的构造函数调用_来完成。19在C中,访问指针所指向的对象的成员使用运算符_。20重载函数在参数类型或参数个数上不同,但_一样。三、改错题本大题共5小题,每题2分,共10分21下面的类Complex 定义中有一处错误,如更正了错误,程序的输出是58i。请用下横线标出错误所在行并给出修改意见。#include /1#includ

5、e /2class Complex /3 double real; /4 double imag; /5public: /6 Complex (double r=0.0, double i=0.0): real (r), imag (i) /7 void show()coutreal=0?: ) fabs(imag)i;/8 friend Complex& operator += (Complex c1, Complex c2) /9 c1.real+=c2.real; c1.imag+=c2.imag; /10 return c1; /11 /12; /13 /14void main ( )

6、 /15 Complex c (3,5); /16 c+=Complex (2,3); /17 c.show ( ); /18 /1922下面的程序有一处错误,请用下横线标出错误所在行并给出修改意见。#include /1/2class shape /3public: /4 int area () return 0; /5;/6/7class rectangle: public shape /8public: /9 int a, b; /10 void setLength (int x, int y) a=x; b=y; /11 int area () return a*b; /12; /13

7、 /14void main () /15 rectangle r; /16 r. setLength (3,5); /17 shape*s=r; /18 cout r.area () endl; /19 cout s.area () endl; /20 /2123下面的程序有一处错误,请用下横线标出错误所在行并提出修改意见。#include /1class CU /2 enum INT, FLOAT type; /3 union value /4 int ivalue; /5 float fvalue; /6 ;/7public: /8 CU (int x): type (INT), ival

8、ue (x) /9 CU (float y): type (FLOAT), fvalue (y) /10 Void print () /11 if (type =INT) /12 cout ivalue; /13 else /14 cout fvalue; /15 /16; /17 /18void main () /19 CU fCU (float) 5.6); /20 CU iCU (8); /21 fCU.print (); /22 cout endl; /23 iCU.print (); /24 /2524下面的类定义中有一处错误,请用下横线标出错误所在行并说明错误原因。class A

9、/1 int a,b; /2public: /3 A(int aa=0, int bb) /4 a=aa; b=bb; /5 /6; /725下面的类定义中有一处错误,请用下横线标出错误所在行并说明错误原因。class Location /1 int X, Y; /2 protected: /3 int SetZero (int zeroX, int xeroY); /4 private: /5 int length, height; /6 public: /7 void Location (int initX, int initY); /8 int GetX ();/9 int GetY (

10、); /10; /11四、完成程序题本大题共5小题,每题4分,共20分。根据题目要求,完成程序填空。26在下面程序横线处填上适当字句,以使该程序执行结果为:5432105.54.4#include template void f ( ) ; for (int i=0; in/2; i+) t=ai, ai=an-1-i, an-1-i=t;void main () int a5=1,2,3,4,5; double d6=1.1,2.2,3.3,4.4,5.5; f(a,5); f(d,6); for (int i=0; i5;i+) cout ai ; cout endl; for (i=0;

11、 i6; i+) cout di ; cout endl;27在下面的横线处填上适当语句,以使类定义完整。class line; class boxprivate: int color; int upx, upy; int lowx, lowy;public: friend int same_color (line l, ); void set_color (int c)color = c; void define_box (int x1, int y1, int x2, int y2) upx=x1; upy=y1; lowx=x2; lowy=y2; ;class line private

12、: int color; int startx, starty; int endx, endy; public: int same_color (line 1,box b); void set_color (int c) color = c; void define_line (int x1, int y1, int x2, int y2) startx = x1; starty= y1; endx=x2; endy = y2;int same_color (line l, box b) if (l.color = b.color) return 1; return 0;28下面程序中A是抽象

13、类,为使其输出是:This is class B printing. This is class C printing. 请在横线处填写适当内容,以使程序完整。#include class Apublic: ;class B: public Apublic: void printMe () cout This is class B printing. endl;class C: public B void printMe () cout This is class C printing. endl;void print ( ) a. printMe (); void main () B b;

14、C c; print (b); print (c);29在下面的横线处填写适当内容,以使类定义完整。class base protected: int a;public: base () a=0; base (int i) a=i; base (base&b) a=b.a;class derived: public base private: int d;public: derived () d=0; derived (int i, int j) : d=j; derived (derived&b): d=b.d;30在下面的横线处填写适当内容,以使类定义完整。class A int *a;

15、int n;public: A(): a(0), n(0) A(int nn) ; /用nn初始化n ; /用a指向长度为n的动态数组空间 ;五、程序分析题本大题共6小题,每题5分,共30分 答出下面各程序的输出结果。31#include template void f(T*a, int n) int k; T t; for (int i=0; in-1; i+) k=i; for (int j=i+1; jaj) k=j; t=ai, ai=ak, ak=t; void main () double d5=12.3, 4.5, -23.4, -90.4, 0; char a5=B, F, A

16、, X,E; f(a,5); f(d,5); for (int i=0; i5; i+) cout di ai endl;32#include void main () cout setprecision(4) 123456 endl 123456.567;33#include class goods private: staic int totalWeight; int weight;public: goods (int w) weight = w; totalWeight +=w; goods (goods&gd) weight = gd.weight; totalWeight +=wei

17、ght; goods () totalWeight -=weight; static int getTotal () return totalWeight; ;int goods: totalWeight=0;void main () goods gl (50); cout goods: getTotal () endl; goods g2 (100); cout g2getTotal () endl;34#include class showNumType public: void show (int); void show (float);void showNumType: show (i

18、nt i) cout This is a integer endl;void showNumType: show (float f) cout This is a float endl;void main () int a = 0; float f=; showNumType snt; snt.show (a); snt.show (f);35#include class A public: A(int i=0) a=i; void print () cout a ,;private: int a;class B: public Apublic: B ()b1=b2=0; B (int i)b1=i; b2=0; B (int i, int j, int k): A(i),b1(j), b2(k) void print ()A: print (); cout

温馨提示

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

评论

0/150

提交评论