ImageVerifierCode 换一换
格式:DOC , 页数:13 ,大小:87.50KB ,
资源ID:1655463      下载积分:3 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1655463.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     索取发票    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(2016-2017年度面向对象程序设计试卷.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

2016-2017年度面向对象程序设计试卷.doc

1、华中科技大学研究生课程考试试卷面向对象程序设计开卷闭卷公共课专业课课程名称: 课程类别 考核形式2017年1月9日学生类别_考试日期_ 院系_杨卫东、左峥嵘学号_姓名_任课教师_一、填空(共15分,每空1分)1、编译时的多态性通过_重载_函数实现。2、面向对象的四个基本特性是 抽象 、 多态 、 继承 和 封装 。3、假定AB为一个类,则执行“AB a(10), *b=&a, &p=a;”语句时调用该类构造函数的次数为 2 。4、C+类成员访问属性 public 、 private 、 protected 三种类型。 5、非成员函数应声明为类的_友元_函数才能访问这个类的private成员。6

2、、。要实现动态联编必须通过对象指针或引用来调用_虚函数_实现。7、类B是由类A以保护方式派生的,则类A中私有访问属性的数据成员在类B中的访问属性为 不可访问 。8、+、=、-等四种运算符中,可采用友元函数重载的运算符是 + 。9、抽象类是指具有 纯虚函数 的类,它只能作为 基类 来使用。二、问答题(共30分,每小题6分)1简述运算符重载的实现方式有哪几种?给出对应的声明语法形式。答案: (1)类外定义的运算符重载函数格式为:friend operator ( 参数1, 参数2) (2)成员运算符重载函数 :operator ( 参数) 2什么是多继承?多继承时,构造函数和析构函数执行顺序是怎样

3、的?答案:多继承是指派生类具有多个基类,派生类与每个基类之间的关系仍可看作是一个单继承。派生类构造函数的执行顺序是先执行所有基类的构造函数(顺序按照定义派生类时指定的各基类顺序),再执行派生类的构造函数,析构函数执行顺序,与构造函数完全相反。3写出下面程序的运行结果#include #include using namespace std;class Personpublic: Person(char *nam,int ag) strcpy(name,nam); age = ag; coutPerson类构造函数-nameendl; Person(char *nam) strcpy(name,

4、nam); coutPerson类构造函数(char *nam)-nameendl; Person() coutPerson类析构函数-nameendl; void display() cout姓名:nameendl; protected: char name100; int age;class Teacher: public Person / 声明Teacher(教师)类public: / 公用部分 Teacher(char *nam,int a,char *t):Person(nam,a) / 构造函数 strcpy(title,t); coutTeacher类构造函数endl; Teac

5、her() coutTeacher类析构函数endl; void display1() / 输出教师有关数据 cout姓名:nameendl; cout年龄ageendl; cout职称:titleendl; protected: / 保护部分char title10; / 职称; class Student: public Person public: Student(char *nam,char s,float sco):Person(nam) sex=s; score=sco; coutStudent类构造函数-nameendl; Student(char *nam, char s):P

6、erson(nam) sex=s; coutStudent类构造函数-班长:nameendl; Student() coutStudent类析构函数-nameendl; void display2() / 输出学生有关数据 cout姓名:nameendl; cout性别:sexendl; cout成绩:scoreendl; char *get_name() return name; protected: / 保护部分char sex;float score; / 成绩;class Graduate: public Teacher, public Student public: Graduate

7、(char *nam,int a,char s,char *t,float sco,float w):Teacher(nam,a,t),Student(nam,s,sco),wage(w),monitor(Li Ming,m) coutGraduate类构造函数endl; Graduate() coutGraduate类析构函数endl; void show( ) / 输出人员的有关数据 coutname:Student:nameendl; coutage:Student:ageendl; coutsex:sexendl; coutscore:scoreendl; couttitle:titl

8、eendl; coutwages:wageendl; coutmonitor:monitor.get_name()endl; Student monitor;private: float wage; / 工资;class Doctor:public Graduatepublic: Doctor(char *nam,int a,char s,char *t,float sco,float w,char *tutor): Graduate(nam,a,s,t,sco,w) strcpy(tutor_name, tutor); couttutor_nameendl; private: char tu

9、tor_name20;int main() Doctor d(Wang-li,24,f,assistant,89.5,1234.5,Wang-wu); return 0;答案:Person类构造函数-Wang-liTeacher类构造函数Person类构造函数(char *nam)-Wang-liStudent类构造函数-Wang-liPerson类构造函数(char *nam)-Li MingStudent类构造函数-班长:Li MingGraduate类构造函数Wang-wuGraduate类析构函数Student类析构函数-Li MingPerson类析构函数-Li MingStuden

10、t类析构函数-Wang-liPerson类析构函数-Wang-liTeacher类析构函数Person类析构函数-Wang-li4写出下面程序的运行结果#include #include using namespace std;class A char string80;public :void show();A(char * st);A( );A:A(char * st) strcpy(string, st);cout string 构造 endl;A:A( ) cout string 析构 endl; void A:show() cout string endl;void fun( ) c

11、out 1 fun内 show(); cout5 main内调用fun函数 endl; fun( ); delete ptrA;A g_glb_Obj(6 外部对象g_glb_Obj); static A g_sta_Obj(7 外部静态对象g_sta_Obj);答案:6 外部对象g_glb_Obj构造 7 外部静态对象g_sta_Obj构造 4 main内动态分配对象m_all_Obj构造4 main内动态分配对象m_all_Obj5 main内调用fun函数1 fun内2 fun内自动对象fun_Obj构造3 fun内静态对象fun_sta_Obj构造2 fun内自动对象fun_Obj析构

12、4 main内动态分配对象m_all_Obj析构3 fun内静态对象fun_sta_Obj析构5写出下面程序的输出结果#include using namespace std;class Apublic:virtual void Print(int a, int b=5) cout a = a , b = b endl; ;class B : public A public:virtual void Print(int a) cout a = a endl; virtual void Print(int a, double d) cout a = a , d = d Print( 2, 6.9

13、 );p - Print( 2 ); void main( ) A * pa = new A; B * pb = new B; Show(pa); Show(pb); delete pa; delete pb;答案:a = 2 , b = 6 a = 2 , b = 5 a = 2 , b = 6 a = 2 , b = 56. 以下程序代码是否有错,如有请改正并写出运行结果#include class Test private: int x,y=20; public: Test(int i,int j) x=i,y=j; int getx()return x; int gety()retur

14、n y; ; void main() Test mt(10,20); coutmt.getx()endl; coutmt.gety()endl; 答案:int x,y=20;在类内部不能对数据成员直接赋值。 修改int x,y; 三、完成程序题(共20分,每小题5分)1. 完成下面类中成员函数的定义。 _ #include using namespace std;class Counter unsigned value;_ public : Counter( ) value = 0; _ friend Counter _operator +(Counter &a); /前置增量运算符函数。vo

15、id Print( ); Counter _operator +(Counter &a ) a.value+; /把Counter类对象的value值增1 cout 调用前置增量运算符函数 !n; return a; /该函数的返回值是value值增1后的对象void Counter:Print( ) static int i = 0; +i; cout ( i ) 对象的value值 = value endl; void main( ) Counter c ; for(int i = 0; i 3; i+) +c; c.Print( );2. 完成下面类中成员函数的定义。 #include

16、#include using namespace std; _ class str private: char *st; public: _ set(a); str(char *a) str & operator=(_) str &a delete st; set(a.st); return *this; void set(_) /初始化st char *s _ st=new charstrlen(s)+1;strcpy(st,s); ; 3. 在下面程序横线处填上适当内容,使程序执行结果为: S=2 S=5 S=9 #include _ int sum(int i) static int s

17、; _ s=s+i+2;_ return s; void main (void) int S; for (i=0;_) i3,i+S = sum(i); _ coutS=S ; coutendl; 4. 下面是根据边长计算三角形面积的C+程序,在下划线处填上正确的语句。 #include #include _ double area(double a, double b, double c);void main() double a,b,c,s; coutabc; _ /判断是否三角形,若是,则执行面积计算代码if(a+bc&a+cb&c+ba) _ s=area(a,b,c); coutTh

18、e area is:sendl; else coutErrorendl; double area(double a, double b, double c) double s;s = (a+b+c)/2.0; s = sqrt(s*(s-a)*(s-b)*(s-c); _ return s;四、写程序题(共35分)1、建立一个字符串类用于存储和处理字符串,采用友元函数对操作符+进行重载,以实现两个字符串的合并功能。(15分)2、写一个具有动态多态性的学生和教师信息输入和显示程序,学生数据有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。要求将编号、姓名、输入和显示设计成一个抽象类person的成员,并将person类作为学生数据操作类student和教师操作类teacher的基类。程序应能根据待输入人员的类别完成对应人员信息的输入和显示功能。(20分) 13 / 8

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服