版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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年阿坝货运运输驾驶员从业资格证考试试题
- 2025年烟台经营性道路客货运输驾驶员从业资格考试
- 2025年陇南货运从业资格证在哪里练题
- 2025年淄博b2货运资格证全题
- 《高血压治疗新进展》课件
- 第四单元 崇尚法治精神
- 水上救援车使用准则
- 科研机构锅炉升级拆除合同
- 生物技术企业设计审查
- 足疗培训课件
- 毛绒玩具行业创业计划书
- 电力检测项目计划书
- 《简易风筝的制作》课件
- 体验式家长会的实施与开展
- 《标准工时培训》课件
- 射击馆建设方案
- 应用写作-消息和通讯
- 华为公司客户满意度管理
- 四年级综合实践活动上三:学校中遵守规则情况调查教学课件
- 2023-2024学年江苏省淮安市数学高一上期末复习检测试题含解析
评论
0/150
提交评论