



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象程序设计实验二实验报告班级 学号 姓名 1 实验目的(1) 了解在VC+、C-free中如何编辑、编译、连接和运行一个C+程序;(2) 掌握声明类的方法,类和类的成员的概念以及定义对象的方法;(3) 了解多文件的C+程序结构。2 实验任务(1) 输入3个整数,将它们按由大到小的顺序输出。要求使用变量的引用。(2) P.141-11。要求按照第10题的形式完成Worker类的程序设计。即setXX函数完成设置成员变量数据,getXX函数用于访问成员变量数据。本题要求有个无参的构造函数,用于完成初始化成员变量数据。(3) 声明日期类,数据成员有year、month、day,成员函数有无参构
2、造函数、输入日期、输出日期、加一天等。练习使用多文件结构来组织程序,输出效果图如下。注意: 对于“加一天”的函数需要考虑多方面的因素,考虑到每年的最后一天加一天就是下一年的第一天;如果是闰年,那么2月最后一天是29号,而平年的2月最后一天为28号,以及大月小月的区别等。3 程序清单任务(1)#include <iostream>using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop *
3、/ void result(int a,int b,int c) int temp;if(a<b)temp=a;a=b;b=temp;if(a<c)temp=a;a=c;c=temp;if(b<c) temp=b;b=c;c=temp; cout<<a<<">"<<b<<">"<<c<<endl;int main(int argc, char* argv) int a,b,c;cin>>a>>b>>c;result(a
4、,b,c);return 0;任务(2)/*main.cpp*/#include <iostream>#include "Worker.h"using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char* argv) Worker w;w.setname("张三");w.setage(20);w.set
5、Dept("机电系");cout<<"姓名:"<<w.getname()<<endl;cout<<"年龄:"<<w.getage()<<endl;cout<<"部门:"<<w.getDept()<<endl;w.setsalary();w.getsalary();return 0;/*Worker.h*/#ifndef WORKER_H#define WORKER_H#include<string>
6、;using namespace std;class Workerprivate:string name;int age;string Dept;double salary,Wage,Subsidy,Rent,WaterFee,ElecFee;public:Worker();void setname(string n);string getname();void setage(int a);int getage();void setDept(string d);string getDept();void setsalary();double getsalary();protected:;#en
7、dif/* Worker.cpp*/#include "Worker.h"#include <iostream>using namespace std;Worker:Worker()void Worker:setname(string n)name=n;string Worker:getname()return name;void Worker:setage(int a)age=a;int Worker:getage()return age;void Worker:setDept(string d)Dept=d;string Worker:getDept()re
8、turn Dept; void Worker:setsalary()cout<<"基本工资:" cin>> Wage; cout<<"岗位津贴:" cin>> Subsidy; cout<<"房租:" cin>> Rent; cout<<"水费:" cin>> WaterFee; cout<<"电费:" cin>> ElecFee;double Worker:getsalary
9、()cout<<"工资为:"<<Wage+Subsidy-Rent-WaterFee-ElecFee;任务(3)/*main.cpp*/#include <iostream>#include "Date.h"using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char* arg
10、v) Date d1,d2,d3,d4;d1.output();d2.input();d2.output();d3.input();d3.outputadd();d4.input();d4.outputadd(); return 0; /* Date .h*/#ifndef DATE_H#define DATE_Hclass Dateprivate:int year,month,day;public:Date();Date(Date &);void input();void output();void outputadd();int leapyear(int year);int get
11、monthday(int month);protected:;#endif/* Date .cpp*/#include "Date.h"#include<iostream>using namespace std;Date:Date() year=1999;month=2;day=28;void Date:input() cout<<"请输入正确日期:"cin>>year>>month>>day;int Date:leapyear(int year)if (year % 4 = 0) &&
12、amp; (year % 100 != 0) | (year % 400 = 0) return true;else return false;int Date:getmonthday(int month)int month_day13=0,31,28,31,30, 31, 30, 31, 31, 30, 31, 30, 31 ;if(month=2&&leapyear(year) month_daymonth+=1;return month_daymonth;Date:Date(Date &d)year = d.year; month = d.month; day =
13、 d.day;void Date:outputadd()Date d(*this); d.day = day+1; while (d.day> getmonthday(d.month) d.day -= getmonthday(d.month); d.month +; if (d.month > 12) d.year +; d.month = 1; cout<<"增加一天日期为:"<<d.year<<"-"<<d.month<<"-"<<d.day&l
14、t;<endl; void Date:output()month=month>12?12:month;day=day>getmonthday(month)?getmonthday(month):day; cout<<"日期为:"<<year<<"-"<<month<<"-"<<day<<endl;4 运行结果任务(1)任务(2)任务(3)5 总结或感悟通过这次面向对象的设计,使我对C+的学习有了更深入的认识,并且复习了自己上学期学习到的知识。这次C+的编写中运用了类和无参的构造函数,让我充分了解类在C+中的运用。编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年互联网金融平台用户信任度提升与风险控制策略研究
- 住宅空置车位管理办法
- 企业服务专员管理办法
- 中职食堂饭菜管理办法
- 乡村土地使用管理办法
- 丰田售后维修管理办法
- 乡镇人员考核管理办法
- 休学创业学籍管理办法
- 临时生产工厂管理办法
- 企业安全预防管理办法
- 泰安低空经济
- 儿童溺水护理常规
- 医疗美容销售培训
- 南通大学《高级英语Ⅲ》2023-2024学年第一学期期末试卷
- 小学数学-二年级升三年级暑假数学作业-口算竖式脱式应用题
- 学堂在线 毛泽东思想和中国特色社会主义理论体系概论 期末考试答案
- 浙教版(2024)七年级上册《第1章 有理数》单元测试卷-学生用卷
- 中国人寿理赔服务课件
- 网络货运安全管理制度
- 2025至2030全球及中国溴化聚苯乙烯(BPS)行业发展趋势分析与未来投资战略咨询研究报告
- 文化认同机制构建-洞察及研究
评论
0/150
提交评论