版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、高级程序设计C+(II)考试题型1、 选择填空题,20题,20分。2、 写出下列程序运行结果,6题,30分。3、 根据题目要求,将程序的空格处补充完整,3题,24分。4、 按要求编写程序,2题,26分。题目示范一、 选择填空题1.下列函数中,不能有参数的是( C )。(A) 成员函数(B) 友元函数(C) 析构函数(D) 构造函数2在下面类的说明中,正确的语句是( A )。class Csample const int a=10; . .(A) Csample(Csample sample);. (B) Csample(int val):a(val ) . .(C)Csample(int x)
2、;. .(D)3. 若Example是已定义的类,在程序结束之前,共创建了( B )对象。 #include “example.h”main() Example example(0), *pExample, Aexample3; example.print(); pExample=new example;(A) 4 (B) 5 (C) 6(D) 74. 下述关于类的静态成员特性描述中,错误的是( D )。 (A) 静态成员函数没有this指针(B) 静态数据成员在类中声明,在类外初始化(C) 在类外引用静态数据成员时,要在静态数据成员名前加<类名>和作用域运算符(D) 类的每个对象
3、都有自己的静态数据成员副本5. 下列为类Fraction重载为非成员函数的运算符重载函数原型中,错误的是( C )。(A) Fraction operator +(Fraction f1, Fraction f2)(B) Fraction operator (Fraction f1)(C) Fraction &operator=(Fraction &f1)(D) Fraction operator * (Fraction f1, Fraction f2)6. 下列为类Example定义重载的提取运算符(“>>”)函数头中,正确的是( A )。(A) istream
4、&operator>>(istream &input, const Example) (B) istream& Example:operator>>(istream &intput, const Example)(C)ostream &operator>>(ostream &input, const Example)(D)ostream& Example:operator>>(ostream &input, const Example)7. 在下列运算符中,不能被重载的是( C )。
5、(A) (B) () (C) :? (D) new8. 在建立派生类对象时,可能要调用的三种构造函数分别是a(基类的构造函数),b(成员对象的构造函数),c(派生类的构造函数). 这三种构造函数的调用顺序是( A )。(A) abc (B) acb(C) cab(D) cba9. 下列程序中划线处应填入的语句是( C )。#include <iostream>class Base public: void fun() cout<<”Base of fun”<<endl; ;class Derived:public Base _; /调用基类的成员函数fun
6、cout<<”Derived of fun”<<endl;(A)Fun() (B) Base.fun()(C) Base:fun()(D) Base->fun()10. 下面程序中错误的语句是( C )。class Base public: virtual void f()=0; virtual a();class Derived: public Base protected: int a,b; public: void f()cin>>a>>b; cout<<endl<<a<<b;void main()
7、 Base *pBase=new Derived; pBase->f();.(A) Derived derive;.(B) derive.Base:f();.(C) Delete pBase;.(D)二、 读程序,写运行结果。(每小题4分,共20分) 1. #include <iostream>using namespace std;class sampleint n;static int sum;public:sample(int x) n=x;void add()sum+=n;void disp()cout<<n<<","<
8、;<sum<<endl;int sample:sum=0;int main()sample a(2),b(3),c(5);a.add();a.disp();b.add();b.disp();c.add();c.disp();2. #include <iostream>using namespace std;class Apublic:virtual void f()cout<<"A:f()"<<endl;void g()cout<<"A:g()"<<endl;class B:p
9、ublic Apublic:void f()cout<<"B:f()"<<endl;void g()cout<<"B:g()"<<endl;int main()A a;B b;a=b;a.f();a.g();A*pa=&b;pa->f();pa->g();三、 读程序填空。1. 以下程序的功能是定义字符串类,实现字符串的连接与赋值。程序的运行结果如下图所示。请将程序补充完整。#include <iostream>#include<cstring>using nam
10、espace std;class STRING public: _(1)_ /构造函数STRING(char *pn) size=strlen(pn); string=new charsize+1; if (string!=0) strcpy_s(string,size+1,pn); void show() /显示输出 cout<<string<<endl; STRING operator+( STRING obj ); / 重载加法运算 STRING & operator=(const STRING &); /重载赋值运算 private: char
11、*string; int size;STRING STRING:operator+( STRING obj ) STRING temp("null");temp.size=size+obj.size;_(2)_;/ temp.string=new chartemp.size+1strcpy_s(temp.string,size+1,string);strcat_s( temp.string,temp.size+1,obj.string );return temp; STRING & STRING:operator =(const STRING &obj)si
12、ze=obj.size;deletestring;string=new charsize+1;if (string!=0)strcpy_s(string,size+1,obj.string);_(3)_ ; /return *thisint main() STRING obj1( "My name is" ),obj2( " Zhangshan" ),obj3("null");obj3 = obj1 + obj2;obj3.show();四、 编写程序有一个鸟类birds,将它作为基类派生麻雀类sparrow、孔雀类peacock和凤
13、凰phoenix。完成这些类的定义,执行下列主程序后,得到如下执行结果。(12分) 有一个鸟类birds,将它作为基类派生麻雀类sparrow、孔雀类peacock和凤凰phoenix。完成这些类的定义,执行下列主程序后,得到如下执行结果。(12分)#include<iostream>#include<cstring>using namespace std;int main()birds *vp3;vp0=new sparrow ("Lulu");vp1=new peacock ("Pipi");vp2=new phoenix (
14、"Couou");for (int i=0;i<3;i+)vpi->showinfo();delete vp; return 0;Ans#include<iostream>#include<cstring>using namespace std;class birdspublic:virtual void showinfo()=0;protected: char Name20;class sparrow:public birdspublic:sparrow(char *name)strcpy(Name,name);void showinf
15、o()cout<<"I am the sparrow "<<Name<<endl;class peacock:public birdspublic:peacock(char *name)strcpy(Name,name);void showinfo()cout<<"I am the peacock "<<Name<<endl;class phoenix:public birdspublic:phoenix(char *name)strcpy(Name,name);void showinfo()cout<<"I am the phoenix "&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 超声波热量表信号处理算法演进
- 2025年泉州晋江市市政工程建设有限公司招聘真题
- 2025年宿迁市宿豫区国有企业招聘真题
- 2025年保山市龙陵县教育教师发展中心选调教师真题
- 初中语文作文讲义 第5讲 写景的技巧
- 《Python编程基础》实训任务-23 定时任务智能管理器-任务文档
- 机关信息系统运维管理制度
- 教师备课不充分个人自查及整改措施
- 智能传送包装设备生产线技术改造项目环评报告表
- 上海市房屋建筑竣工建筑信息模型(BIM)交付要求2026
- 2026四川南充市属国有企业联合招聘37人笔试题库及完整答案详解(有一套)
- 十五五规划前瞻:智能宠物经济如何重塑万亿级家庭消费新赛道
- 校园制度文化实施方案
- 2025-2026学年秋期苏科版物理八年级上册期中训练卷【附答案】
- 2026年湘教版七年级下册语文期末质量达标卷(含答案可下载)
- 侍茄师初级专项能力职业技能专业能力考卷
- IT系统运营管理制度
- 2025版《中国热射病诊断与治疗指南》解读课件
- 无人机飞防工作制度
- 中国注意缺陷多动障碍诊疗指南(2025年版)
- 劳务派遣机构规范运营自查自纠整改落实报告
评论
0/150
提交评论