欢迎来到天天文库
浏览记录
ID:18946449
大小:107.50 KB
页数:16页
时间:2018-09-26
《面向对象实验(实验一~五参考答案)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、南昌航空大学实验报告年月日课程名称:面向对象程序设计实验名称:类与结构班级:XXXXXXX学生姓名:XXXXXX学号:指导教师评定:XX签名:XXXXX1、实验目的·学习掌握声明和定义类及成员。·学习掌握访问类对象成员。·学习掌握保护数据如何屏蔽外部访问的原理,更好的认识类的封装2、实验内容(1)定义一个满足下列要求的Date类:①用下面的格式输出日期:日/月/年②可运行在日期上加一天操作③设置日期//Date.h#includeclassDate{public:voidDisplay();voidAddOneDay
2、();voidSetDay(inty,intm,intd);protected:boolLegal(inty,intm,intd);boolIsLeapYear(inty);intyear;intmonth;intday;};voidDate::Display(){cout<3、seif(Legal(year+1,1,1))day=1,month=1,year++;}15voidDate::SetDay(inty,intm,intd){if(Legal(y,m,d))day=d,month=m,year=y;}boolDate::Legal(inty,intm,intd){if(y>99994、5、y<16、7、d<18、9、m<110、11、m>12)returnfalse;intdayLimit=31;switch(m)case4:case6:case9:case11:dayLimit--;if(m==2)dayLimit=IsL12、eapYear(y)?29:28;return(d>dayLimit)?false:true;}boolDate::IsLeapYear(inty){return!(y%4)&&(y%100)13、14、!(y%400);}(2)定义一个时间类Time,能提供和设置由时、分、秒组成的时间,并编出应用程序,定义时间对象,设置时间,输出该对象提供的时间。并将类定义作为接口,用多文件结构实现之。//Time.hclassTime{public:Time();voidPrint();voidSet(int,int,int);protected:intmin15、;intsec;inthour;};//time.cpp#include#include"Time.h"Time::Time(){min=23;sec=20;hour=18;}voidTime::Print()15{cout<#include"Time.h"voidmain(){intm,s,h16、;Timetime;cout<<"Nowthetimeis:"<>s>>m>>h;while(s<017、18、s>=6019、20、m<021、22、m>=6023、24、h<025、26、h>24){cout<<"Pleaseinputagain:"<>s>>m>>h;}time.Set(s,m,h);cout<<"Thetimeofbeingchangedis:"<27、空大学实验报告年月日课程名称:面向对象程序设计实验名称:静态成员与友元班级:XXXXXXX学生姓名:XXXXXX学号:指导教师评定:XX签名:XXXXX1、实验目的·学习友元函数的定义和原理。·学习静态数据成员和静态成员函数的使用。·学习静态成员代替全局变量实现对象间的共享。2、实验内容(1)有如下类的定义。类成员函数copy用于实现两个对象的相互拷贝,请完成该函数的实现。(有两种方法即不用this指针和用this指针),并利用友员函数实现copy.#includeclassMyclass{public:Myclas28、s(inta,intb){x=a;y=b;}voidcopy(Myclass&my);voidprint(){cout<<“x=”<
3、seif(Legal(year+1,1,1))day=1,month=1,year++;}15voidDate::SetDay(inty,intm,intd){if(Legal(y,m,d))day=d,month=m,year=y;}boolDate::Legal(inty,intm,intd){if(y>9999
4、
5、y<1
6、
7、d<1
8、
9、m<1
10、
11、m>12)returnfalse;intdayLimit=31;switch(m)case4:case6:case9:case11:dayLimit--;if(m==2)dayLimit=IsL
12、eapYear(y)?29:28;return(d>dayLimit)?false:true;}boolDate::IsLeapYear(inty){return!(y%4)&&(y%100)
13、
14、!(y%400);}(2)定义一个时间类Time,能提供和设置由时、分、秒组成的时间,并编出应用程序,定义时间对象,设置时间,输出该对象提供的时间。并将类定义作为接口,用多文件结构实现之。//Time.hclassTime{public:Time();voidPrint();voidSet(int,int,int);protected:intmin
15、;intsec;inthour;};//time.cpp#include#include"Time.h"Time::Time(){min=23;sec=20;hour=18;}voidTime::Print()15{cout<#include"Time.h"voidmain(){intm,s,h
16、;Timetime;cout<<"Nowthetimeis:"<>s>>m>>h;while(s<0
17、
18、s>=60
19、
20、m<0
21、
22、m>=60
23、
24、h<0
25、
26、h>24){cout<<"Pleaseinputagain:"<>s>>m>>h;}time.Set(s,m,h);cout<<"Thetimeofbeingchangedis:"<27、空大学实验报告年月日课程名称:面向对象程序设计实验名称:静态成员与友元班级:XXXXXXX学生姓名:XXXXXX学号:指导教师评定:XX签名:XXXXX1、实验目的·学习友元函数的定义和原理。·学习静态数据成员和静态成员函数的使用。·学习静态成员代替全局变量实现对象间的共享。2、实验内容(1)有如下类的定义。类成员函数copy用于实现两个对象的相互拷贝,请完成该函数的实现。(有两种方法即不用this指针和用this指针),并利用友员函数实现copy.#includeclassMyclass{public:Myclas28、s(inta,intb){x=a;y=b;}voidcopy(Myclass&my);voidprint(){cout<<“x=”<
27、空大学实验报告年月日课程名称:面向对象程序设计实验名称:静态成员与友元班级:XXXXXXX学生姓名:XXXXXX学号:指导教师评定:XX签名:XXXXX1、实验目的·学习友元函数的定义和原理。·学习静态数据成员和静态成员函数的使用。·学习静态成员代替全局变量实现对象间的共享。2、实验内容(1)有如下类的定义。类成员函数copy用于实现两个对象的相互拷贝,请完成该函数的实现。(有两种方法即不用this指针和用this指针),并利用友员函数实现copy.#includeclassMyclass{public:Myclas
28、s(inta,intb){x=a;y=b;}voidcopy(Myclass&my);voidprint(){cout<<“x=”<
此文档下载收益归作者所有