定义日期类date【cqupt】

【问题描述】

定义日期类Date。要求:

(1)可以设置日期;

(2)日期加一天操作;

(3)输出函数,输出格式为“XXXX-XX-XX”;

(4)编写主函数,定义对象,完成相应功能。


【输入形式】

程序的参考的输入(“Input Date:”为提示文字):

Input Date:2016 2 28

【输出形式】

程序的输出:

2016-2-28

2016-2-29


【样例输入】

Input Date:2016 2 28

【样例输出】

2016-2-28

2016-2-29


【样例说明】
【评分标准】#include  <iostream> 
using  namespace  std; 
class  Date 

public: 
    Date() 
    { 
        cout<<"Input  Date:"; 
        cin>>y>>m>>d; 
    } 
    int  beLeapYear() 
    { 
        return  ((y%4==0&&y%100!=0)||(y%400==0)); 
    } 
    void  addOneDay() 
    

{ if(d==31)
          {
              if(m==12)
              {
                  y +=1;
                  m=d=1;
              }
              else
                m +=1;
          }
          else if(d==30)
          {
              switch(m)
              {
                case 4:
                case 6:
                case 9:
                case 11:m +=1;d=1;break;
                default: d +=1;break;
              }
          }
          else if(d==29)
          {
              if(2==m)
               {
                   d=1;
                   m +=1;
               }
              else{
                d +=1;
              }
          }
          else if(d==28)
          {
              if(2==m)
                {
                    if(beLeapYear())
                        d+=1;
                    else
                    {
                        m+=1;
                        d=1;
                    }
                }
                else
                    d +=1;
          }
        else
            d +=1;

    } 


    void  showDate() 
    { 
        cout<<y<<"-"<<m<<"-"<<d<<endl; 
      } 
private: 
    int  y,m,d; 
    }; 
int  main() 

      Date  d; 
      d.showDate(); 
      d.addOneDay(); 
      d.showDate(); 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值