设为首页    加入收藏

自学考试省级导航

全国 A安徽 B北京 C重庆 F福建 G广东 广西 甘肃 贵州 H河南 河北 湖南 湖北 黑龙江 海南 J江苏 江西 吉林 L辽宁 N内蒙古 宁夏 Q青海 S山东 山西 陕西 四川 上海 T天津
     X新疆 西藏 Y云南 Z浙江 历年真题分类检索

全国2005年10月自考面向对象程序设计试题 (精美word版)(一)
2013-04-10 19:51:49 来源:91考试网 作者:www.91exam.org 【

全国2005年10月高等教育自学考试面向对象程序设计试题
课程代码:02328
一、单项选择题(本大题共12小题,每小题2分,共24分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1. 所谓多态性是指 (      )
A. 不同的对象调用不同名称的函数         
B. 不同的对象调用相同名称的函数
C. 一个对象调用不同名称的函数           
D. 一个对象调用不同名称的对象

2. 有如下程序段:
int *p,a[6]={-1,0,1,2,3,4};  p=a+3;
 执行该程序段后,*p的值为 (      )
A. 4                    
B. 2               
C. 1                    
D. NULL

3.类MyA的拷贝初始化构造函数是 (      )
A. MyA()               
B. MyA(MyA*)           
C. MyA(MyA&)             
D. MyA(MyA)

4.一个函数功能不太复杂,但要求被频繁调用,则应把它定义为 (      )
A. 内联函数              
B. 重载函数          
C. 递归函数              
D. 嵌套函数

5.以下有关继承的叙述正确的是 (      )
A. 构造函数和析构函数都能被继承
B. 派生类是基类的组合
C. 派生类对象除了能访问自己的成员以外,不能访问基类中的所有成员
D. 基类的公有成员一定能被派生类的对象访问

6. 解决二义性问题的方法有(      )
A. 只能使用作用域分辨操作符
B. 使用作用域分辨操作符或赋值兼容规则
C. 使用作用域分辨操作符或虚基类
D. 使用虚基类或赋值兼容规则

7. 假设类X以类Y作为它的一个基类,并且X类的名字func()支配Y类的名字func(),obj为类X的对象,则obj.func()语句实现的功能为 (      )
A. 先执行类X的func(),再执行访问类Y的func()
B. 先执行类Y的func(),再执行访问类X的func()
C. 执行类X的func()
D. 执行类Y的func()

8.以下叙述正确的是(      )
A. 构造函数调用虚函数采用动态联编
B. 构造函数可以说明为虚函数
C. 当基类的析构函数是虚函数时,它的派生类的析构函数也是虚函数
D. 析构函数调用虚函数采用动态联编

9.以下关于抽象类的描述正确的是 (      )
A. 不能说明指向抽象类对象的指针或引用
B. 可以说明抽象类对象
C. 抽象类的纯虚函数的实现可以由自身给出,也可以由派生类给出
D. 抽象类的纯虚函数的实现由派生类给出

10.在下面格式化命令的解释中,错误的是 (      )
A. ios::skipws            跳过输入中的空白字符
B. ios::fill()            获得当前的填充字符
C. ios::hex              转换基数为八进制形式
D. ios::precision             返回当前的精度

11.下面运算符中,不能被重载的运算符是(      )
A. <=          
B. -          
C. ?:          
D. []

12.下列有关模板和继承的叙述正确的是 (      )
A. 模板和继承都可以派生出一个类系
B. 从类系的成员看,模板类系的成员比继承类系的成员较为稳定
C. 从动态性能看, 继承类系比模板类系具有更多的动态特性
D. 相同类模板的不同实例一般没有联系,而派生类各种类之间有兄弟父子等关系

二、填空题(本大题共8小题,每小题2分,共16分)请在每小题的空格中填上正确答案。错填、不填均无分。
13. 在C++中函数原型不但能标识函数的__________,而且能标识函数参数的__________。

14. 如果类的名称是MyClass则析构函数名为__________,一个类最多能有__________个析构函数。

15. 假设类X的对象x是类Y的成员对象,则“Y Obj”语句执行时,先调用类__________的构造函数,再调用类__________的构造函数。

16. 基类的公有成员在私有派生类中是__________成员,基类的保护成员在公有派生类中是__________成员。

17. 对虚函数使用对象指针或引用,系统使用__________联编,对虚函数使用对象调用时,系统使用__________联编。

18. 静态成员定义的关键字为__________,一般通过__________来访问静态成员。

19. 类在面向对象程序设计中非常重要,在设计类时可以参考一些原则,如充分利用__________增加类的自身可靠性,通过继承建立__________等等。

20. 将关键字__________写在函数体之前函数头之后,说明该函数是一个__________,可以防止函数改变数据成员的值。

三、改错题(本大题共5小题,每小题2分,共10分)
21.指出下面引用性说明类MyClass的用法的错误之处,并说明出错原因。
class MyClass;
void main() {
MyClass obj1;
MyClass *p;
void func( MyClass obj);
}
22.下面程序中有一处错误,请用下横线标出错误所在行并说明出错原因。
class base{
protected:
int p;
public:
Base(int m){p=m;}
};
void f()
{  Base a(10);
   cout<}
23.下面程序中有一处错误,请用下横线标出错误所在行并说明出错原因。
class base {
  public: int x;
};
class One:public base{};
class Two:public base{};
class OT:public One,public Two{
public:  int func();
};
void main() {
OT p;
p.base::x;
}
24.下面程序中有一处错误,请用下横线标出错误所在行并说明出错原因。
class Base{
public:  virtual void fun()=0;
};
class Test: public Base{
public: virtual void fun(){cout<<″Test.fun=″<};
void main() {
Base a;
Test*p;  p=&a;
}
25.下面程序中有一处错误,请用下横线标出错误所在行并提出修改意见。
class A{
private:
 static int x;
};
void func(int a)
{
x=a;
}

Tags:自学考试 历年真题
】【打印繁体】 【关闭】 【返回顶部
上一篇浙江省2008年7月高教自学考试汽车.. 下一篇全国2006年1月自考面向对象程序设..

网站客服QQ: 960335752 - 14613519 - 48225117