⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cdate.cpp

📁 学生管理的源码
💻 CPP
字号:
#include <iostream>
using namespace std;
int dayOfMonth[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
//类声明
class Date
{
private:
	int year,month,day;
    bool isLeapYear(int year); //判断是否为闰年函数
public:
	int dis_Date();
	int dateincrease();
	bool set_Date(int year,int month,int day);
};
//日期输出函数定义
int Date::dis_Date()
{
	cout<<day<<'/'<<month<<'/'<<year<<endl;
	return 0;
}
//日期递增函数定义
int Date::dateincrease()
{
	day++; //日期加1
{
//如果到达月末,则前进到下个月
if (day>dayOfMonth[month-1])
{
    day=1;
    month++;
//如果到了年末,则到下一年
if (month>12)
{
   month=1;
   year++;
}
}
//判断是否为非闰年的2月29号
if (month==2 && day==29&&!isLeapYear(year))
{
    month=3;
    day=1;
}
    return 0;
}
}

//判断闰年函数定义
bool Date::isLeapYear(int year)
{
//年份值能被4整除,并且不能被100整除,或者能被400整除
	if (((year%4 == 0) && (year%100 != 0))||(year%400==0)) 
		return true;
	   return false;
}

//判断年月设置是否正确
bool Date::set_Date(int year,int month,int day)
{
//判断日期值是否正确
   if(month>12||month<1)
   {
     cout<<"month error\n";
       return false;
   }
   if (day>dayOfMonth[month-1]||day <1||        //正常的日期值
       (month == 2 && day == 29 && !isLeapYear(year))) //闰年日期
   {
       cout << "day error\n";
        return false;
   }
//正确
     Date::year=year;
     Date::month=month;
     Date::day=day;
       return true;
}

//主函数
int main()
{
    Date date;//定义对象date
    int year,month,day;
    while(1) 
	{
     cout <<"Please input year,month,day:";
     cin >>year>>month>>day;
      //输入为0 表示结束循环
        if (year == 0)
          return 0;
      //如果输入值不正确,则不做后面的操作
    if (!date.set_Date(year,month,day))    
       continue;
     
	//对象调用函数  
	 date.dis_Date();
     date.dateincrease();
     date.dis_Date();
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -