闰年判断
能够被4整除但不能被100 整除, 或者能够被400 整除
if(( year % 4 == 0 && year %100 != 0) || year % 400 ==0))
month[2] = 29;
月份记录
4,6,9,11 month = 30;
2 月 month = 28 or 29
其他 month = 31;
即:month[] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
完整代码
定义一个满足输出格式为年/月/日的日期格式,在输入的日期上进行加一天的操作并输出
#include <iostream>
using namespace std;
class Date{
public:
void set(int y,int m,int d);
add();
print();
private:
int year;
int month;
int day;
};
//成员函数
void Date::set(int y,int m,int d){
year = y;
month = m;
day = d;
}
Date::add(){
int monthday[] = {0,31,28,31,30,31,30,31,31,30,31,30,31,31};
if((year %4 == 0 && year %100 != 0 ) || (year %400 == 0))
monthday[2] = 29;
//日期
if(day < monthday[month]) day ++;
else{
day = 1;
month += 1;
//月份
if(month >12 ){
year += 1;
month = 1;
}
}
}
Date :: print(){
cout<<year<<"/"<<month<<"/"<<day<<endl;
}
int main(){
Date d1;
int y,m,d;
cout<<"请输入年月日:";
cin>>y>>m>>d;
d1.set(y,m,d);
d1.print();
cout<<"下一天:";
d1.add();
d1.print();
return 0;
}