




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2009年3月计算机等级考试二级C+真题一、选择题(每小题2分,共70分) (11)对C+编译器区分重载函数无任何意义的信息是 A A)参数类型 B)参数个数 C)返回值类型 D)常成员函数关键字coast (12)有如下类定义和变量定义: D class A publie: 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)有如下类定义和变量定义: B class Parents public: int publicuata; private: int privateData; ; class ChildA:public Parents/*类体略*/; class ChildB:private Parents/*类体略*/); ChildA a; ChildBb; 下列语句中正确的是 A)couta.publicData endl ; B)couta.privateData endl ; C)coutb.publicData endl ; D)coutb.privateData open(“file.dat”); (17)下列描述中,不属于面向对象思想主要特征的是 A A)封装性 B)跨平台性 C)继承性 D)多态性 (18)有如下程序段: Tnt i=4;int j=l; int main() int i=8,j=i; coutijendl; 运行时的输出结果是 B A)44 B)41 C)88 D)81 (19)有如下程序段: int i=5; while(int i=0)cout*;i-; 运行时输出“*”的个数是 B A)0 B)1 C)5 D)无穷 (20)己知有数组定义 char a34; 下列表达式中错误的是 C A)a2=“WIN” B)strcpy(a2,“WIN”) C)a 23=W D)a01=a01 (21)已知函数fun的原型为 int fun(int,int,int); 下列重载函数原型中错误的是 B A)char fun(int,int); B)double fun(int,int,double); C)int fun(int,char*); D)float fun (int, int, int); (22)建立一个类对象时,系统自动调用 B A)析构函数 B)构造函数 C)静态函数 D)友元函数 (23)通过派生类的对象可直接访问其 A A)公有继承基类的公有成员 B)公有继承基类的私有成员 C)私有继承基类的公有成员 D)私有继承基类的私有成员 (24)己知表达式+a中的“+”是作为成员函数重载的运算符,则与十+a等效的运算符函数调用形式为 D A)a .orerator+(1) B)operator+(a) C)operator+(a,l) D)a.operator+( ) (25)在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是 B A)( ) B) C) D) (26)当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为 A A)ios_base:in B)ios_base:in|ios_base:out C)ios_base:out D)ios_base:in&ios_base:out (27)有如下程序: #include #include using namespace std; class XCD char* 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); coutstrien (x .Geta()+y. Getb()+endl; return 0; 运行时的输出结果是 A A)12 B)16 C)14 D)11 (28)有如下程序: #include #include using namespace std; class XCF int a; public: XCF(int aa=0):a (aa)cout“1”; XCF(XCF& x)a=x .a; cout“2”;) XCF()couta; int Geta()return a; ; int main() XCF dl(5),d7 (dl); XCF *pd=new XCF(8); coutGeta(); delete pd; return 0; 运行时的输出结果是 A A)121SS88 B)12188SS C)12185 D)128512 (29)已知类MyClass声明如下: class MyClass int n; public; MyClass(int k):n(k) int getValue()constreturn n; ; 在下列数组定义中正确的是 C A)MyClass x12; B)MyClass x22=new MyClass(1),new MyClass(2); C)MyClass *x32; D)MyClass *x42=MyClass(1),MyClass(2); (30)有如下程序: #include using namespace std; class AA lilt 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_ ; /1 x .n=1; /2 x.setN (2); /3 x.k=3; /4 x .setK(4); return 0; 在标注号码的四条语句中正确的是 D A)1 B)2 C)3 D)4 (31)有如下类定义: class XX int xx; public: XX():xx(0)cout A; XX(int n):xx ( n)tout B; ; Class YY:public XX Int yy; public: YY():yy ( 0)cout+yy; YY(int n):XX(n+1),yy(n)coutyy; YY (int m, int n):XX (m),yy(n)coutyy; ; 下列选项中,输出结果为A0的语句是 C A)YY y1(0,0); B)YY y2(1); C)YY y3(0); D)YY y4; (32)有如下程序: #include Using namespace std; class A public: virtual void f()cout+1; void g()cout2; ; class B:public A public: virtual void f()cout3; void g()ecut4; ; void show(A &a)a.f();a.g( ); int main() B b; show(b); return 0; 运行时的输出结果是 A A)12 B)34 C)14 D)32 (33)有如下程序: #include using namespace std; class Pair int 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 A)bool Pair:operator(Pair p)const if (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)const if (mp.m) return true; return np.n; D)bool Pair:;operator(Pair p) if (mp.m) return true; return np.n; (34)假定下列语句都是程序运行后首次执行的输出语句,其中输出结果与另外三条语句不同的语句是 C A)coutsetfill(*)123setw(9)321; B)coutsetfill(*)setw(6)left123setw(6)right321; C)cout123setfill(*)setw(6)321; D)coutsetfill(*)SetW(9)left123321; (35)有如下程序: #include using namespace std; class ONE int c; public: ONE():c(0)cout1; ONE(int n):c (n)cout2; ; class TWO ONE onel; ONE one2; public: TWO(int m):one2(m)cout3; ; int main()t TWO t(4) return 0 运行时的输出结果是 D A)3 B)23 C)123 D)213 二、填空题(每空2分,共30分)(1)假设用一个长度为50的数组(数组元索的下标从0到49)作为栈的存化空间,栈底指针bottom指间 栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有【1】19 个元素。 (3)符合结构化原则的三种基本控制结构是:选择结构、循环结构和【3】顺序结构。 (6)有如下程序段: int x=1,Y=2,z=3; x=xz; y=yz; z=xy; coutxyz; 执行这个程序段的输出是【6】100。 (7)有如下程序段: fer(int i=1; i=50;i+) if(i%3 != 0) continue; else if(i%5!=0) continue; touti“,”; 执行这个程序段的输出是【7】Line1.x1 或 Line1.x2。 (8)有如下程序段: Char c 20=“examination”; c4=0; coutcendl; 执行这个程序段的输出是【8】Image1.Left。 (9)下面的函数利用递归实现了求1+2+3+n的功能: int sum(int n) if(n=0) return 0; else return n+sum(n-1); 在执行sum(10)的过程中,递归调用sum函数的次数是【9】KeyAscii。 (10)非成员函数应该声明为类【10】Combo1.Text 函数才能访问该类的私有成员。(11)有如下程序: #include using namespace std; class Monitor public: Monitor(char t):type (t) void print( ) const cout“The type of monitor is”typeendl; private: char type; ; class Computer public: Computer(int i,char c): 【11】Input void Print()const cout“The computer is”idendl;mon.Print(); private: int id; Monitor mon; ; const Computer myComputer(101,B); myComputer .Print(); return 0; 请将程序补充完整,使程序在运行时输出: The computer is 101 The type of monitor i.s 8 (12)有如下程序: #include using namespace std class Animal public: 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(Animal& a) couta.getType(); void speak(Animal a) couta.getVoice(); int main( ) Dog d; type (d);cout“ speak”;speak(d);coutendi; return 0; 运行时的输出结果是【12】ch。 (13)补充完整下面的类定义: const double PI=3 .14; class Circle /圆形物体的抽象基类 protected: double r; /半径 public: Circle(double radius=0):r(radius) 【13】Len(mystr);/计算圆形物体表面积的纯虚函数声明 ; class Cylinder:public Circle /圆柱体类 double h; /高度 publi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年法律硕士经典例题含完整答案详解(夺冠)
- 检测员考试题目及答案
- 监理考试题目及答案详解
- 农发行黄山市黄山区2025秋招英文面试题库及高分回答
- 深圳市2025年3月广东深圳市大鹏新区建筑工务署招聘编外人员7人笔试历年参考题库附带答案详解
- 偶像明星成长启示录心理剧故事剖析
- 传染病重大误封假信息统计
- 职业教育专业核心课程教材编写
- 羊绒制品保养方法指南
- 农村文化和教育建设规定
- 高血压病基层诊疗指南
- 医院视频监控系统维保方案
- 门诊护士课件教学课件
- 《大学生的人际关系》课件
- 职务侵占罪培训
- 中式烹调师技能等级认定四级理论知识试卷
- DB65-T 4784-2024 冰川范围调查技术规范
- 幼儿园礼仪小天使《借物品》教学课件
- 年产四万吨聚脂长丝工厂设计说明书
- 四年级教材《劳动》课件
- 《电动汽车充电设备检验试验规范 第1部分:非车载充电机》
评论
0/150
提交评论