- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京大学信息学院考试试卷
考试科目:程序设计实习(A卷)考试时间2007年6月
姓名: 学号:
题
号
-二二
三
四
五
六
七
八
九
十
总分
分 数
阅 卷 人
考场纪律
请持学生证入场考试,并按指定座位就座;除必要的文具和教师指定的
用具用书外,其他所有物品包括手机、呼机、 MP3电子词典、书籍、笔
记、纸张等严禁带入座位,必须放在指定位置。凡有试题印制问题请向 监考教师提出,不得向其他考生询问。
认真、诚实、独立并在规定时间内完成答卷,严禁任何形式的违纪作弊 行为;否则,本答卷成绩以 0分记,并根据《北京大学本科考试工作与 学术规范条例》给予纪律处分。
不 要 答 题提前交卷的考生不要在考场逗留,不要在门口、窗外大声喧哗。考试结 束时间到,请停止答卷,在座位等候监考教师收卷并清点完毕,方可离 开考场;考题和试卷不得带出考场 。
不 要 答 题
以下为答题纸,共 页
一、单项选择题(共 20分,每题2分,正确答案只有一项)
以下说法中正确的是:
类的成员不能既是 static成员、又是私有成员;
函数F是类A的友员,B是A的一个对象,F中可以访问B的私有成 员;
函数F是类A的成员,B是A的一个对象,F中不能访问B的私有成 员;
类A是类B的派生类,函数F是类A的成员,F中可以访问B的私有 成员。
( )
以下关于类的说法中不正确的是:
类可以有多个构造函数;
类的构造函数没有返回值;
类可以有多个析构函数;
类的析构函数不允许带参数。
( )
以下关于多态的说法中,不正确的说法是:
一个虚函数,在基类和派生类中名字必须相同,但参数可以不同;
具有多态行为的函数,在基类中要用 virtual 声明为虚函数;
函数的多态行为,是通过动态联编实现的;
基类和派生类中的同名函数,只要它们的参数不同,就不能构成多态 关系。
( )
以下关于派生类的说法,不正确的是:
派生类拥有基类的全部成员;
创建派生类的对象时,先要调用基类的构造函数;
派生类中可以借助基类的 public 、protected 函数,访问基类的 private
成员;
派生类的对象不能赋值给基类的变量。
( )
以下关于抽象类的说法,不正确的是::
抽象类中,至少有一个成员函数被声明为纯虚函数;
不能用抽象类来创建对象;
可以用抽象类的指针来访问派生类的对象;
抽象类可以作为函数的参数类型。
( )
关于对象,以下说法错误的是 :
对象的成员属性也可以是对象;
假设B是类A的一个对象,则B的成员包括 A中定义的全部属性和函 数;
在创建类的对象时,不需要为其中的 static 属性分配存储空间;
在对象的co nst成员函数中,可以修改当前对象的 con st属性。
( )
以下说法中,错误的是:
在类的友员中,允许访问该类对象的 private 成员;
通过对象名,总能访问其中的 public 成员;
在对象的成员函数中,不允许访问同类其它对象的 protected 成员;
在派生类的成员函数中,可以访问基类的 protected 成员。
( )
8?运算符 “ +”既可以重载成类A的成员函数,也可以重载成类A的友员
函数,下列说法错误的是:
以成员函数方式重载时,成员函数只有一个参数;
以成员函数方式重载时, 表达式中运算符 “ +的左边必须是 A的对象;
以友员函数方式重载时,友员函数需要两个参数;
以友员函数方式重载时,表达式中 A 的对象只可出现在运算符 “+的”
左边;
( )
以下关于 STL 中 set 类模板的正确说法是:
set中允许多个相同的元素存在
对于set上的迭代器p,不能够执行 p++操作
set 一般用平衡二叉树实现
可以用 sort 算法对 set 进行排序
( )
关于继承,以下说法错误的是:
类B和类C都是类A的派生类,则B和C的对象共享A的static成员;
使用基类的 protected 成员函数,在派生类中也可以访问到基类的 private 成员;
派生类自动拥有基类的全部成员,因此派生类中定义的成员不能与基 类的成员同名;
在创建一个派生类的对象时,总是先执行基类的构造函数;
( )
二.以下程序编译、连接都能通过,请写出运行时输出的结果。你认为没 有输出的,就写 无输出(每题 4分,共 28 分)。
程序 1
#include iostream.h
class A { private:
static int d;
public:
int b;
A() { d++; };
A(A a) { d++; };
~A() {d--;};
int fun() { return d; };
};
int A::d = 0;
void func(A b) {
cout in func: b.fun() end
文档评论(0)