




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2009 年 3 月 二级 C+真题及参考答案一、选择题(每小题 2 分,共 70 分)(11)对 C+编译器区分重载函数无任何意义的信息是A)参数类型B)参数个数C)返回值类型D)常成员函数关键字 coast (12)有如下类定义和变量定义:class Apublie:A()data=0;A()int GetData ( ) coast return data;void SetData(int n) data=n;private:int data;ccnst A a;A b;下列函数调用中错误的是A)a .GetData() ;B) a .SetData(10) ;C) b .GetData() ;D)b .SetData(10) ; (13)有如下类定义和变量定义:class Parentspublic:int publicuata;private:int privateData;class ChildA:public Parents/*类体略*/;class ChildB:private Parents/*类体略*/) ;ChildA a;ChildBb;下列语句中正确的是A)coutopen(“file.dat”) ; (17)下列描述中,不属于面向对象思想主要特征的是A)封装性B)跨平台性C)继承性D)多态性 (18)有如下程序段:Tnt i=4;int j=l;int main()int i=8,j=i;coutD) (26)当使用 ifstream 流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为A)ios_base:inB) ios_base:in|ios_base:outC) ios_base:outD)ios_base:inclass XCDchar* a;int b;public:XCD(char* aa, int bb)a=new charstrlen(aa)+1;strcpty(a,aa) ;b=bb;Char* Geta ()return a;)int Getb() return b;int main()char *pl=“abcd”,*p2=“weirong” ;int dl=6, d2=8;XCD x(pl,dl) ,Y(p2,d2) ;cout#includeusing namespace std;class XCFint a;public:XCF(int aa=0):a (aa)coutGeta() ;delete pd;return 0;运行时的输出结果是A)121SS88B) 12188SSC) 12185D)128512 (29)已知类 MyClass 声明如下:class MyClassint n;public;MyClass( int k):n( k)int getValue()constreturn n;在下列数组定义中正确的是A)MyClass x12;B) MyClass x22=new MyClass(1) ,new MyClass(2);C) MyClass *x32;D)MyClass *x42=MyClass(1) ,MyClass(2) ; (30)有如下程序:#includeusing namespace std;class AAlilt k;protected:int n;void setK(int k) this-k=k;public:void setN(int n) this-n=n;class BB: public /*类体略 */;int main()BB x_ ; /1x .n=1; /2x.setN (2) ; /3x.k=3; /4x .setK(4) ;return 0;在标注号码的四条语句中正确的是A)1B) 2C) 3D)4 (31)有如下类定义:class XXint xx;public:XX():xx(0)coutUsing namespace std;class Apublic:virtual void f()cout+1;void g()coutusing namespace std;class Pairint m;int n;public:Pair(int i,int j):m(i) ,n(j)boot operator (pair p)const; /须在类体外给出定义;int main()Pair Al(3,4) ,p2(4,3) ;p3(4,5) ;Coutp2)P1)p3)p2 ) ;return 0;运算符函数。operator的功能是比较两个 Pair 对象的大小,当左边对象大时,返回 true,否则返回 false。比较规则是首先比较两对象的 m 成员,m 大者为大;当 m 相等时比较 n,n 大者为大。程序输出 0101,下列对运算符重载函数的正确定义是A)bool Pair:operator(Pair p)constif (m!=p.m) return mp.m; return np.n;B) bool Pair:;operator(Pair p)if (m!=p.m) return mp.m; return np.n;C) bool Pair:operator(Pair p)constif (mp.m) return true; return np.n;D)bool Pair:;operator(Pair p)if (mp.m) return true; return np.n;(34)假定下列语句都是程序运行后首次执行的输出语句,其中输出结果与另外三条语句不同的语句是A)coutusing namespace std;class ONEint c;public:ONE():c (0)coutusing namespace std;class Monitorpublic:Monitor(char t):type (t)void print( ) constcoutusing namespace stdclass Animalpublic:virtual char* getType()const return “Animal”;virtual char* getVoice()const return “Voice”;;Class Dog : public Animal public:char* getType ( ) const return “Dog”;char* getVoice ( ) const return “Woof”;void type(AnimalType b;public:Xtwe(Type aa=0, Type bb=0):a(aa) ,b(bb)int Ccmpare ()/ 比较 a 和 b 的大小if (ab ) returm 1;else if(a=b) return 0;else return -1;Type Snm() return a+b; /返回 a和 b 之和Type Mult() ; /函数声明,返回a 和 b 之乘积 ;Template【15】:Mult()return a*b; /Mult 函数的类外定义 参考 答案一、 选择题:(11)D (12)B (13)A (14)B ( 15) B (16)A (17)B (18)C (19) A (20)D (21)D (22)B (23)A (24)B (25)C (26)B (27)A (28)B (29)C (30)B (31)D (32)D (33)C (34)C ( 35)B二、填空题(6)213 (7)15,30,45 (8)examination( 9)10 (10)友元 (11)id(i) ,mom(c) (12)Dog speak Woof (13 )Virtual double Area() return PI *r*r (14 )return *a (15)Xwo2009 年 9 月二级 C+笔试试卷(11)已知函数 FA 调用 FB,若要把这两个函数定义在同一个文件中,则( ) 。 A)FA 必须定义在 FB 之前 B)FB 必须定义在 FA 之前 C)若 FA 定义在 FB 之后,则 FA 的原型必须出现在 FB 的定义之前 D)若 FB 定义在 FA 之后,则 FB 的原型必须出现在 FA 的定义之前 (12)有如下两个类定义: class AA; class BB AA v1,*v2; BB v3; int *v4; ; 其中有一个成员变量的定义是错误的,这个变量是( ) 。 A)v1 B)v2 C)v3 D)v4 (13)有如下类定义: class XX int xdata; public: XX(int n=0) : xdata(n) ; class YY : public XX int ydata; public: YY(int m=0, int n=0) : XX(m), ydata(n) ; YY 类的对象包含的数据成员的个数是( ) 。 A)1 B)2 C ) 3 D)4 (14)下列关于运算符函数的描述中,错误的是( ) 。 A)运算符函数的名称总是以 operator 为前缀 B)运算符函数的参数可以是对象 C)运算符函数只能定义为类的成员函数 D)在表达式中使用重载的运算符相当于调用运算符重载函数 (15)下列关于模板形参的描述中,错误的是( ) 。 A)模板形参表必须在关键字 template 之后 B)模板形参表必须用括弧()括起来 C)可以用 class 修饰模板形参 D)可以用 typename 修饰模板形参 (16)在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是( ) 。 A)ios_base:cur B)ios_base:beg C)ios_base:out D)ios_base:end (17)下列字符串中可以用作 C+标识符的是( ) 。 A)2009var B)goto C)test-2009 D)_123 (18)下列枚举类型的定义中,包含枚举值 3 的是( ) 。 A)enum test RED, YELLOW, BLUE, BLACK; B)enum test RED, YELLOW=4, BLUE, BLACK; C)enum test RED=-1,YELLOW, BLUE, BLACK; D)enum test RED, YELLOW=6, BLUE, BLACK; (19)有如下程序段: int i=1; while(1) i+; if(i=10) break; if(i%2=0) cout class A; 下列声明中,与上述声明不等价的是( ) 。 A)template class A; B)template class A; C)template class A; D)template class A; (26)下列关于 C+流的描述中,错误的是( ) 。 A)coutA表达式可输出字符 A B)eof()函数可以检测是否到达文件尾 C)对磁盘文件进行流操作时,必须包含头文件 fstream D)以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件 (27)有如下程序: # include using namespace std; class Toy public: Toy(char* _n) strcpy(name, _n); count+; Toy() count-; char* GetName() return name; static int getCount() return count; private: char name10; static int count; ; int Toy:count=0; int main() Toy t1(“Snoopy“), t2(“Mickey“), t3(“Barbie“); cout using namespace std; class A public: A(int i) : r1(i) void print() cout using namespace std; class Name char name20; public: Name() strcpy(name, “); cout using namespace std; class AA public: AA() cout using namespace std; class C1 public: C1() cout using namespace std; class Publication /出版物类 char name30; public: Publication(char *name=“未知名称 “) strcpy(this-name,name); const char * getName()const return name; virtual const char * getType()const return “未知类型“; ; class Book: public Publication /书类 public: Book(char *name): Publication(name) virtual const char * getType()const return “书“; ; void showPublication( Publication int main() int s=123, 234; cout20; i-=2) cout using namespace std; class GrandChild public: GrandChild() strcpy(name,“Unknown“); const char * getName() const return name; virtual char * getAddress() const=0; private: char name20; ; class GrandSon : public GrandChild public: GrandSon(char *name) char * getAddress() const return “Shanghai“; ; int main() GrandChild *gs=new GrandSon (“Feifei“); coutgetNam
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 14246:2022/Amd 1:2025 EN Gas cylinders - Cylinder valves - Manufacturing tests and examinations - Amendment 1
- 全国销量最好的数学试卷
- 桥面钢丝支撑施工方案(3篇)
- 钢架拱门施工方案(3篇)
- 航天考试题库及答案
- 村医考试题库及答案
- 安徽省宣城市宣州区2023-2024学年高三下学期高考第三次模拟考试语文题库及答案
- 产品质量问题追溯体系缺陷产品管理工具
- 热血战士出发1000字7篇
- 广告行业方案书及演示模板通版
- 音响设备消费行为预测-洞察及研究
- 手术部(室)医院感染控制标准WST855-2025解读课件
- 2025年纪检监察新入职人员岗前考试试题库及答案
- 2025年0-3岁儿童发展指南
- 2025年安徽演艺集团有限责任公司招聘20人笔试备考题库及完整答案详解
- (2025年标准)政府基金协议书
- 医学人文与医患沟通能力
- 安全生产施工管理方案(3篇)
- 2025数字量化混凝土配合比设计标准
- 三升四数学综合练习(60天)暑假每日一练
- 宁德新能源verify测试题库
评论
0/150
提交评论