定义日期类型Date

2.(学习通)定义日期类型Date。要求有以下面成员: (2)日期加一天操作; (3)输入函数,输入格式为“XXXX年XX月XX日”。 要求:使用成员函数实现对数据的输入、输出,在头文件中完成类的声明,在.cpp中完成 类的实现,在主文件(.cpp)中完成主函数编写。参见教材8.5.2以及P262,第8章第4 题。

#include "iostream.h"
//判断year是否是闰年
bool isLeapYear(int year)
{
return (year%400==0 || (year%4==0 && year%100!=0));
}
//日期类
class Date
{
private:
int year;
int month;
int day;
public:
Date()
{}
Date(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//设置日期
void setDate(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//在当前日期的基础上增加一天
void addOneDay()
{
day++;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
if(day > 31)
{
day -= 31;
month++;
}
break;
}
case 4:
case 6:
case 9:
case 11:
{
if(day > 30)
{
day -= 30;
month++;
}
break;
}
case 2:
{
if(isLeapYear(year))
{
if(day > 29)
{
day -= 29;
month++;
}
}
else
{
if(day > 28)
{
day -= 28;
month++;
}
}
break;
}
default:
{
break;
}
}
}
//输出函数,输出格式为:XXXX年XX月XX日,如2010年4月11日
void display()
{
cout< }
};
//输入函数,输入格式为:XXXX XX XX,如2010 4 13
Date InputDate()
{
int year, month, day;
Date now = Date();
cin>>year>>month>>day;
now.setDate(year, month, day);
return now;
}
void main()
{
Date now = Date();
cout<<"请输入日期(XXXX XX XX)";
now = InputDate();
cout<<"日期:";
now.display();
now.setDate(2011, 5, 31);
cout<<"新日期:";
now.display();
now.addOneDay();
cout<<"一天后:";
now.display();
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632