欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C--第7次实验报告讲解(共9页).doc

    • 资源ID:5435776       资源大小:96KB        全文页数:9页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C--第7次实验报告讲解(共9页).doc

    精选优质文档-倾情为你奉上C语言程序设计课程实验报告(第 7 次)学 院:数学与计算机学院姓 名:张元杰学 号:3专 业:软件工程班 级:1班同 组 人:实验地点:6A-2实验时间:指导教师:实验名称:继承与派生(二)所使用的开发工具及环境:硬件 PC机一台实验目的:1 理解继承和派生的概念;2 理解继承在面向对象程序设计中的重要作用;3 掌握通过继承派生出一个新类的方法;4 进一步学习简单面向对象程序的编写; 实验内容:1. 教师干部类/50分设计一个基类Person类,再派生出教师类(Teacher)、干部类(Cadre),再采用多重继承派生出新类:Teacher_Cadre要求如下:1)Person类包含:姓名、年龄、性别、地址、电话等;在 Teacher类中新增加:title(职称) ,在 Cadre 类中新增加:post(职务) ,在 Teacher_Cadre中新增加:wages(工资)成员; 2)Person类,Teacher类,Cadre类都包含:display()函数,分别输出本类中的成员信息; 3)在Teacher类,Cadre类中的姓名、年龄、性别、地址、电话等数据成员使用相同名字,在派生类中引用这些数据成员时,采用指定作用域的方式; 4)在派生类 Teacher_Cadre 的成员函数 Show()中调用 Teacher 类中的 display()函数,输出姓名、年龄、性别、地址、电话,职称;另外同时再输出其他成员变量。 5)使用对象数组保存输入的对象;2. 小型公司人员管理某小型公司有四类人员: 总经理、 技术人员、 销售经理、 推销员。 设计一个基类 employee派生出 manager(总经理) 、technician(技术人员) 、salesmanager(销售经理) 、saleman(推销员)。销售经理既是经理又是销售人员,兼具两类人员的特点,因此同时继承 manager 和salesman 两个类。 /50分1)类定义 employee类: 基本信息:编号、姓名、性别、出生日期、职位、薪水等;出生日期使用自定义的 Date(日期)类;其中:基本信息为 private 属性,成员函数为 public 属性;多个构造函数:缺省构造函数、带参数的构造函数、带默认参数的构造函数;可以从外部访问类成员函数; Date 类: 成员变量:年、月、日 成员函数:SetYear(int year)、SetMonth(int month)、SetDay(int day)、GetYear()、GetMonth()、GetDay() 派生类 technician:新增属性:工作时间 派生类 saleman:新增属性:销售额、所属部门 2)实现人员信息的录入与显示; 3)计算并显示个人月薪: 月薪计算办法:总经理拿固定月薪 8000 元,技术人员按每小时25元领取月薪;推销员的月薪按当月销售额的4%提成; 销售经理固定月薪5000元加所管辖部门当月销售总额的 5 。实验提示 在基类中,除了定义构造函数和析构函数,还应统一定义对各类人员信息应有的操作,规范类族中各派生类的基本行为,但是各类人员的月薪计算方法不同,不能在基类employee 中统一确定计算方法。各类人员信息的显示内容不同,同样不能在基类employee中统一确定显示方法。在基类中实现上述功能的函数体应为空,在派生类中根据同名覆盖原则定义各自的同名函数实现具体功能。 将基类 employee 分成两个独立文档:employee.h(类声明头文件) 和 employy.cpp(类实现文件) “职位”的类型设定为 int;结果与分析:Sy7-1:#include<iostream>#include<string>using namespace std;class Personpublic:Person()Person(string na,int ag,string se,string ad,string te):name(na),age(ag),sex(se),addr(ad),tel(te)void display();private:string name;int age;string sex;string addr;string tel;class Teacher: public Personpublic:Teacher(string na,int ag,string se,string ad,string te,string ti):Person(na,ag,se,ad,te),title(ti)void display();private:string title; /职称;class Cadre: public Personpublic:Cadre(string na,int ag,string se,string ad,string te,string po):Person(na,ag,se,ad,te),post(po)void display();string Post()return post;private: string post; /职务;class Teacher_Cadre:public Teacher,Cadrepublic:Teacher_Cadre(string na,int ag,string se,string ad,string te,string ti,string po,double wa):Teacher(na,ag,se,ad,te,ti),Cadre(na,ag,se,ad,te,po),wages(wa)void show();private:double wages;void Person:display()cout<<"Name:"<<name<<endl;cout<<"Age:"<<age<<endl;cout<<"Sex:"<<sex<<endl;cout<<"Address:"<<addr<<endl;cout<<"Tel:"<<tel<<endl;void Teacher:display()Person:display();cout<<"Title:"<<title<<endl;void Cadre:display()Person:display();cout<<"Post:"<<post<<endl;void Teacher_Cadre:show()Teacher:display();cout<<"Post:"<<Post()<<endl;cout<<"Wages:"<<wages<<endl<<endl;int main()Teacher_Cadre tc3=Teacher_Cadre("张三",33,"男","成都","","教授","教务处主任",7999), Teacher_Cadre("李思",25,"女","重庆","","讲师","助理",5677), Teacher_Cadre("王武",27,"男","广州","","副教授","讲师",6299);for(int i=0;i<3;i+)tci.show();system("pause");return 0;Sy7-2:#include<iostream>#include<string> using namespace std;class Date /时间类public:Date(int ye=0,int mo=0,int da=0):year(ye),month(mo),day(da)void SetYear(int year)year=year;void SetMonth(int month)month=month;void SetDay(int day)day=day;int GetYear()return year;int GetMonth()return month;int GetDay()return day;private:int year;int month;int day;class Employee /雇员类public:Employee()Employee(int nu,string na,string se,int ye,int mo,int da,string ti):num(nu),name(na),sex(se),birthday(ye,mo,da),title(ti)void Setwages(double wa)wages=wa;void display();Date birthday;private:double wages;int num;string name;string sex;string title;class Manager: virtual public Employee /经理类public:Manager()Manager(int nu,string na,string se,int ye,int mo,int da,string ti):Employee(nu,na,se,ye,mo,da,ti)Setwages(8000);void display();class Technician:public Employee /技术人员类public:Technician(int nu,string na,string se,int ye,int mo,int da,string ti,double wo):Employee(nu,na,se,ye,mo,da,ti), WorkTime(wo)Setwages(WorkTime*25);void display();private:double WorkTime;class Saleman: virtual public Employee /销售员类public:Saleman(int nu,string na,string se,int ye,int mo,int da,string ti,double sa,string de):Employee(nu,na,se,ye,mo,da,ti),department(de),sale(sa)Setwages(sale*0.04);double Getsale()return sale;void display();private:double sale;string department;class Salesmanager:public Saleman,Manager /销售经理类public:Salesmanager(int nu,string na,string se,int ye,int mo,int da,string ti,double sa,string de):Saleman(nu,na,se,ye,mo,da,ti,sa,de),Manager(nu,na,se,ye,mo,da,ti),Employee(nu,na,se,ye,mo,da,ti)Setwages(5000+Getsale()*0.005);void display();int main()Manager m1(101,"张三","男",1987,4,3,"经理");m1.display();cout<<endl;Technician te1(301,"李嗣","男",1988,4,23,"技术人员",200);te1.display();cout<<endl;Saleman sm1(201,"王武","男",1990,6,3,"销售员",20000,"副食部");sm1.display();cout<<endl;Saleman sm2(202,"陈琪","女",1992,12,17,"销售员",40000,"副食部");sm2.display();cout<<endl;Salesmanager sma1(210,"赵柳","女",1986,4,29,"销售经理",60000,"副食部");sma1.display();system("pause");return 0;void Employee:display()/基本信息:编号、姓名、性别、出生日期、职位、薪水等;cout<<"编号:"<<num<<endl;cout<<"姓名:"<<name<<endl;cout<<"性别:"<<sex<<endl;cout<<"出生日期:"<<birthday.GetYear()<<"."<<birthday.GetMonth()<<"."<<birthday.GetDay()<<endl;cout<<"职位:"<<title<<endl;cout<<"薪水:"<<wages<<endl;void Manager:display()Employee:display();void Technician:display()Employee:display();cout<<"工作时间:"<<WorkTime<<endl;void Saleman:display()Employee:display();cout<<"部门:"<<department<<endl;cout<<"销售额:"<<sale<<endl;void Salesmanager:display()Saleman:display();专心-专注-专业

    注意事项

    本文(C--第7次实验报告讲解(共9页).doc)为本站会员(飞****2)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开