全国2001年10月自考面向对象程序设计试题
更新时间:2023-11-14 16:38:01 阅读量: 教育文库 文档下载
www.4juan.com 自考及各类其他考试历年试题免费免注册下载 超过2万套word文档试题和答案 做试题,没答案?上自考365,网校名师为你详细解答!
全国2001年10月自考面向对象程序设计试题
课程代码:02328
第一部分 选择题 (共20分)
一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符
合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。 1.在C++中,函数原型不能标识( )
A.函数的返回类型 B.函数参数的个数 C.函数参数类型 D.函数的功能 2.在C++程序中,对象之间的相互通信通过( )
A.继承实现 B.调用成员函数实现 C.封装实现 D.函数重载实现 3.对于任意一个类,析构函数的个数最多为( )
A.0 B.1 C.2 D.3 4.下面函数模板定义中不正确的是( )
A.template
C.template
B.是类与类的关系
C.是一个类的成员函数与另一个类的关系 D.提高程序的运行效率
6.语句ofstream f(″SALARY.DAT″,ios::app|ios::binary);的功能是建立流对象f,试图打开文件SALARY.DAT并与之连接,并且( )
A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件 B.若文件存在,将其置为空文件;若文件不存在,打开失败
C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件 D.若文件存在,打开失败;若文件不存在,建立一个新文件 7.下面说法正确的是( )
A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C.类的内联函数必须在类体内定义
D.类的内联函数必须在类体外通过加关键字inline定义
8.可以用p.a的形式访问派生类对象p的基类成员a,其中a是( ) A.私有继承的公有成员 B.公有继承的私有成员 C.公有继承的保护成员 D.公有继承的公有成员
全国2001年10月自考面向对象程序设计试题
1
www.4juan.com 自考及各类其他考试历年试题免费免注册下载 超过2万套word文档试题和答案
9.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是( ) A.派生类的对象可以赋给基类的对象 B.派生类的对象可以初始化基类的引用 C.派生类的对象可以直接访问基类中的成员
D.派生类的对象的地址可以赋给指向基类的指针 10.对于类定义 class A{
public:
virtual void func1( ){ } void func2( ){ } };
class B:public A{ public:
void func1( ){cout<<″class B func 1″< virtual void func2( ){cout<<″class B func 2″< 下面正确的叙述是( ) A. A::func2( )和B::func1( )都是虚函数 B. A::func2( )和B::func1( )都不是虚函数 C. B::func1( )是虚函数,而A::func2( )不是虚函数 D. B::func1( )不是虚函数,而A::func2( )是虚函数 第二部分 非选择题 (共80分) 二、填空题(本大题共10小题,每小题2分,共20分)不写解答过程,将正确的答案写在每小题的横线处。 错填或不填均无分。 11.定义类的动态对象数组时,系统只能够自动调用该类的_________构造函数对其进行初始化。 12.在C++程序设计中,建立继承关系倒挂的树应使用_________继承。 13.表达式cout< 14.基类的公有成员在派生类中的访问权限由_________决定。 15.C++支持的两种多态性分别是_________多态性和_________多态性。 16.C++中语句const char * const p=″hello″;所定义的指针p和它所指的内容都不能被_________。 17.假定AB为一个类,则语句AB(AB&x);为该类_________构造函数的原型说明。 18.将关键字const写在成员函数的_________和_________之间时,所修饰的是this指针。 19.在C++中,访问一个对象的成员所用的运算符是_________,访问一个指针所指向的对象的成员所用的运算符是_________。 20.派生类从一个或多个以前定义的该类的_________继承数据和函数。 三、改错题(本大题共5小题,每小题2分,共10分) 21.指出下面程序段中的错误,并说明出错原因。 class A{ int a,b; public: A(int aa,int bb) {a=aa;b=bb;} }; Ax(2,3),y(4); 22.指出并改正下面利用类模板的对象定义中的错误。 template 全国2001年10月自考面向对象程序设计试题 2 www.4juan.com 自考及各类其他考试历年试题免费免注册下载 超过2万套word文档试题和答案 T x,y; public: Tany(T a,T b){x=a,y=b;} T sum( ){return x+y;} }; Tany (int) obj(10,100); 23.指出下面程序段中的错误,并说明出错原因。 class one{ private: int a; public: void func(two&); }; class two{ private: int b; friend void one::func(two&); }; void one::func(two& r) { a=r.b; } 24.指出下面程序段中的错误,并说明出错原因。 #include public: void fun( ){cout<<″a.fun″< class B{ public: void fun( ){cout<<″b.fun″< class C:public A,public B{ private:int b; public:void gun( ){cout<<″c.gun″< 25.指出下面程序段中的错误,并说明出错原因。 class Location { int X,Y=20; protected: int zeroX,zeroY; int SetZero(int ZeroX,int ZeroY); private: int length,height; public: float radius; 全国2001年10月自考面向对象程序设计试题 3 www.4juan.com 自考及各类其他考试历年试题免费免注册下载 超过2万套word文档试题和答案 void init(int initX,int initY); int GetX( ); int GetY( ); }; 四、完成程序题(本大题共5小题,每小题4分,共20分) 根据题目要求,完成程序填空。 26.在下面横线处填上适当字句,完成类中成员函数的定义。 class A{ int * a; public: A(int aa=0) { a=_________;//用aa初始化a所指向的动态对象 } ~A(){_________;}//释放动态存储空间 }; 27.下面是一个函数模板,用于计算两个向量的和。在下面横线处填上适当字句,完成函数模板定义。#include T* c=_________; for(int i=0;i c[i]=_________; return c; } void main() { int a[5]={1,2,3,4,5},b[5]={10,20,30,40},*p; p=f(a,b,5); for(int i=0;i<5;i++) cout< 28.下面是一个用户口令检查程序,在横线处填上适当语句完成程序功能。 #include _________//定义由PASS指针所指向的口令wolleh。 void main() { char user[10];//用于存放输入的口令 cout<<″please input your password:″< if((strcmp(user,PASS))==0) cout<<″your password is correct″< cout<<″your password is error″< 全国2001年10月自考面向对象程序设计试题 4 www.4juan.com 自考及各类其他考试历年试题免费免注册下载 超过2万套word文档试题和答案 29.下面是类fraction(分数)的定义,其中重载的运算符<<以分数形式输出结果,例如将三分之二输出为2/3。在横线处填上适当字句。 class fraction{ int den; //分子 int num; //分母 friend ostream& operator<<(ostream&,fraction); … }; ostream& operator <<(ostream& os,fraction fr){ _________; return _________; } 30.在下面程序横线处填上适当的字句,使其输出结果为0,56,56。 #include _________func( ){return 0;} }; class derived:public base{ public: int a,b,c; _________ setValue(int x,int y,int z){a=x;b=y;c=z;} int func( ){return(a+b)*c;} }; void main() { base b; derived d; cout< cout< cout< 五、程序分析题(本大题共6小题,每小题5分,共30分) 给出下面各程序的输出结果。 31.#include int *a; int *&p=a; int b=10; p=&b; cout<<*a; } 输出为: 全国2001年10月自考面向对象程序设计试题 5
正在阅读:
(目录)2018-2024年化学农药原药行业市场评估分析及发展前景调研战略研究报告-发展趋势预测 - 图文11-26
EXCEL常用财务函数:投资计算函数、折旧计算函数、偿还率计算函数及05-08
福利彩票管理系统大学本科毕业论文03-08
银行外汇考试题库10-19
教师家访先进事迹材料5篇05-02
配套K12安徽省金寨第一中学2019届高三化学上学期第一次月考试题11-14
农民工现状05-17
IT综合运维管理系统技术方案03-28
浅谈职业教育教学改革创新01-06
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 程序设计
- 自考
- 试题
- 面向
- 对象
- 全国
- 2001