想把自己好不容易写出来的记录下来:
问题:
定义日期类型Date。要求有以下面成员:
(1)可以设置日期;
(2)日期加一天操作;
(3)输出函数,输出格式为“XXXX年XX月XX日”。
运行结果如下:
代码如下:
#include <iostream>
using namespace std;
class date
{
public:
int i;
int day,year,month;
void set()
{
cin>>year;
if((year%4==0&&year%100!=0)&&(year%400!=0))//判断是否是闰年
{
cin>>month;
cin>>day;
if(month==1||month==3||month==5||month==7||month==8||month==10)
{
if(day==31)
{month+=1;
day=1;
}
else
{
day+=1;
}
}
if(month==2)
{
if(day==29)
{
month+=1;
day=1;
}
else
{
day+=1;
}
}
if(month==4||month==6||month==9||month==11)
{
if(day==30)
{
month+=1;
day=1;
}
else
{
day+=1;
}
}
if(month==12)//若是12月还要到下一年,这也是种情况
{
if(day==31)
{
year+=1;
month=1;
day=1;
}
else
{
day+=1;
}
}
}
else
{
cin>>month;
cin>>day;
if(month==1||month==3||month==5||month==7||month==8||month==10)
{
if(day==31)
{month+=1;
day=1;
}
else
{
day+=1;
}
}
if(month==2)
{
if(day>=28)
{
month+=1;
day=day-27;
}
else
{
day+=1;
}
}
if(month==4||month==6||month==9||month==11)
{
if(day==30)
{
month+=1;
day=1;
}
else
{
day+=1;
}
}
if(month==12)
{
if(day==31)
{
year+=1;
month=1;
day=1;
}
else
{
day+=1;
}
}
}
}
void display()
{
cout<<year<<"Äê"<<month<<"ÔÂ"<<day<<"ÈÕ"<<endl;
}
};
int main()
{
date p;
p.set();
p.display();
return 0;
}