实验一实验报告.doc
上传人:sy****28 上传时间:2024-09-15 格式:DOC 页数:4 大小:33KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

实验一实验报告.doc

实验一实验报告.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

南昌航空大学实验报告年月日课程名称:面向对象程序设计实验名称:类与结构班级:学生姓名:学号:指导教师评定:签名:1、实验目的·学习掌握声明和定义类及成员。·学习掌握访问类对象成员。·学习掌握保护数据如何屏蔽外部访问的原理,更好的认识类的封装2、实验内容(1)定义一个满足下列要求的Date类:①用下面的格式输出日期:日/月/年②可运行在日期上加一天操作③设置日期#include<iostream.h>#include<iomanip>usingnamespacestd;classDate{public:voidDisplay();voidSetDay(intyear,intmonth,intday);voidAddOneDay();protected:boolLegal(intyear,intmonth,intday);boolIsLeapYear(intyear);intyear;intmonth;intday;};boolDate::IsLeapYear(intyear){return((year%4==0&&year%100!=0)||(year%400==0));}boolDate::Legal(intyear,intmonth,intday){if(month<=0||month>12)return0;if(IsLeapYear(year)){if(month==2){if(day<=0||day>29)return0;}else{if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){if(day<=0||day>31)return0;}else{if(day<=0||day>30)return0;}}}else{if(month==2){if(day<=0||day>28)return0;}else{if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){if(day<=0||day>31)return0;}else{if(day<=0||day>30)return0;}}}return1;}voidDate::Display(){cout<<year<<"/"<<month<<"/"<<day<<"\n";}voidDate::SetDay(inty,intm,intd){cout<<"pleaseinputy,m,d:\n";cin>>y>>m>>d;year=y;month=m;day=d;if(!Legal(year,month,day)){cout<<"error\n";}}voidDate::AddOneDay(){day++;if(!Legal(year,month,day)){day=1;if(month==12){year++;month=1;}elsemonth++;cout<<year<<"/"<<month<<"/"<<day<<"\n";}elsecout<<year<<"/"<<month<<"/"<<day<<"\n";}voidmain(){inty;intm;intd;DateD;while(1){D.SetDay(y,m,d);D.Display();D.AddOneDay();}}(2)定义一个时间类Time,能提供和设置由时、分、秒组成的时间,并编出应用程序,定义时间对象,设置时间,输出该对象提供的时间。并将类定义作为接口,用多文件结构实现之。//Time.hclassTime{public:Time();voidPrint();voidSet(int,int,int);protected:intmin;intsec;inthour;};//time.cpp#include<iostream.h>#include"Time.h"Time::Time(){min=23;sec=20;hour=18;}voidTime::Print(){cout<<hour<<":"<<min<<":"<<sec<<endl;}voidTime::Set(ints,intm,inth){cout<<"pleaseinputthetime:"<<"\n";cin>>h>>