序号 试卷 第 1 页 ( 共 5 页 ) 4.[ ]GetData函数功能是Get它动态创建的包含有数据的基地址,及数据个数,好的设计方案及客户对它的正确调用是: A. int GetData( int * pp ); int *pd; int n = GetData( pd ); B. int * GetData( int n ); int n=3; int *pd = GetData( n ); C. int GetData( int pp ); int *pd; int n = GetData( pd ); D.int GetData( int ** pp ); int *pd; int n = GetData(&pd ); 5. [ ] 已有定义 class K { int main() { private: K(); K k1; return 0; }; } 修改错误: A.去掉private: B. K k1; 改为 K k1(); C.private 改为public D. }; 改为 } 6.[ ](多选)设计一个影片管理系统,包括一般影片、外国片,影片剪接,现有一部外国影片Titanic (泰坦尼克号),如下的解决方案正确的有: A.Film作为基类,ForeignFilm和 DirectorCut作为Film的派生类。 B.Titanic作为Film的的成员变量。 C.Titanic是ForeignFilm的一个实例。 D.Film作为类ForeignFilm和类DirectorCut的成员变量。 E.数据输出Output函数采用虚成员函数,Film、ForeignFilm、DirectorCut都实现它。
2014 ~ 2015 学年
一. 选择 (16分,每题2分)
1.[ ] 以下面向对象程序设计(OOP)的基本概念不正确的是
A. 计算机并不仅仅是一台机器,它更像我们大脑的一部分。
B. 面向对象程序设计语言的目的是为了解决现实世界的模拟问题(如变电站系统).
C. 对象类型的设计是面向对象程序设计的中心任务。
D. 继承表示了基本类型和派生类型之间的相似性,一个基类具有所有由它派生出来的类型
所共有的特性和行为。
E. 当处理类型层次结构时,程序员常常希望不把对象看作是某一特殊类型,而把它看作基
本类型,应用OOP的多态性,编写不依赖于特殊类型的代码。
F. C++语言中类实际上就是对象。
2.[ ]要访问名空间IEC中的标识符LPHD,C++的方法是
A.IEC::LPHD B.IEC .LPHD
C.IEC:LPHD C.using namespace std; LPHD
3. [ ] 动态分配n个float元素的内存空间,C++编程方法是:
A.float *p=new float[sizeof(float)]*n; B.float a[ ]=new float[n];
C.float *p=new float[n]; D.float a[n];
注:教师应使用计算机处理试题的文字、公式、图表等;学生应使用水笔或圆珠笔答题。
7. [ ] 已有定义: class BC{ public:int b; void mfunc(){cout<<\class DC : public BC { public: int d; void mfunc(){ BC::mfunc();cout<<\BC bc; DC dc; BC *pb=new DC; 以下代码正确的是: A. bc.d = 1; B. pb->d = 1; C. DC *p=pb; p.d = 1; D. DC *pdc=static_cast
二.填空(26分,1,7题每题3分,其他每空1分) 1.面向对象程序设计语言的主要特征是______________________________ 6.C++标准模板库的名空间的名称是 ___________ 7. 函数参数的设计其数据传递有三种方式,分别是传________________________ 8. 实现下面的类 class CPerson { protected: 2. 返回对象的引用,修改下面代码 int& dl( int n ) { ___________ int j= 2*n; return j; } 3. 下面代码CA和CB类型的对象分别有___3.1____个数据成员, 实现类的构造函数,初始化数据成员 class CB : public CA class CA { { int b; private: public: int a; CB(int a,int b) ________3.3______ public: { CA(int a) { _____3.2_______ } _____3.4______ }; } }; 4. 设计一个函数decode,功能是对字符串,用密钥解码,设计函数原型 (接口)是:___4.1__________________________________________ 其中相关参数和返回的说明:________4.2__________________________ 5. 异常处理代码填空 int main( ) int div( int a,int b) { try { { int u,v; cin>>u>>v; if(b ==0 ) cout<<\ ______5.1____“error:b==0”; } return a/b; _____5.2_______ } { cout<
int main( ) { vector< ____8.9_______ > students; for(int i=0;i<10;i++) { string name; int score; cin>>name>> score; CStudent stu(name); stu. setscore(score); students.push_back(stu); 2. 下面代码的输出结果__________________ class B class Z: public B { public: { public: B() { cout<<\ Z(){ cout<<\virtual ~B(){cout<<\virtual ~Z(){ cout<<\}; }; void main() { B* p =new Z; delete p ; } 3. 下面的程序写入到data.txt文件中的内容___________3.1________________________ 屏幕显示的输出的内容_________________________3.2_____________________ #include