求解任意两日期间相隔的天数

原创 2016年06月01日 22:28:16

闰年判断

if((year%400==0)||year%4==0&&year%100!=0)

则是闰年


#include<iostream>
using namespace std;

class Date
{
    private:
    int year,month,day;

public:

.........

};


int mon(int year,int month)

 {

 if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)

   return 31;

else if(month==4||month==6||month==9||month==11)

  return 30;

else if(year%400==0||(year%4==0&&year%100!=0)

return 29;

 else

return 28;

 }


/*注:日期类的定义省略*/

/*一个·日期相加n天,后的日期*/

int data(int n)

{

  day+=n;

int y=year;

int m=month;

while(day>mon(y,m))

  {

 day-=mon(y,m);

    m++;

  if(m>12)

     {

m=1;

  y++;

     }

  }

}

}

//相减,同理

/****************************************************/

/*任意两个日期间的天数*/

#include<iostream>
using namespace std;

class Date
{
    private:
    int year,month,day;

public:

Date operator&(Date &p)

 {

  int flag;

     if(year!=p.year) { flag=1;  if(year<p.year) flag=-1; }

            else if(month!=p.month) { flag=1;  if(month<p.monthr) flag=-1; }

               else

                return day-p.day;

 

 int y1,m1,d1,y2,m2,d2;

 if(flag==-1)

{ y1=year; m1=month; d1=day; y2=p.year; m2=p.month; d2=p.day;  }

else

{ y2=year; m2=month; d2=day; y1=p.year; m1=p.month; d1=p.day;  }

int i=y1,j=m1;

int s=0;

 while(i!=y2||j!=m2)

 {

   s=s+mon(i,j);

     j++;

  if(j>12)

  { j=1; s++ }

   }

  s=s+d2-d1;

  s=s*flag;

return s;

};







版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C++ 求两日期间相隔天数

#include #include #include using namespace std; struct Date{ int year; int month; i...

两日期的间隔天数

  • 2015年08月13日 11:03
  • 5KB
  • 下载

计算两个日期间的天数

计算两个日期间的天数 这个不难,只是要很心细,上次写提碰到这个,忽然间去做,觉得好麻烦,今天找时间完整的想了遍~ 主要思想是,怎么算最快: 我觉得 应该是首先算整年份,其次整月份,然后算天数 但是,...

Java 两个日期间的天数计算

在Java中计算两个日期间的天数,大致有2种方法:一是使用原生JDK进行计算,在JDK8中提供了更为直接和完善的方法;二是使用第三方库。 1、使用原生的JDK private static ...

任意两天之间的天数

  • 2013年08月15日 15:15
  • 1KB
  • 下载

C语言计算任意两日期之间天数

今天复习了会Program in c,有道题目计算任意两个日期之间的天数: 想了好久,最后写了一个很挫的程序..... #include struct date { int year; ...

Calendar获得当前时间之前或之后的一周或者一天或者其他任意天数的时间点

日常开发中经常会需要计算出当前时间的一周之前的Date,或者当前之后的时间点, Calendar类是java官方推荐使用的日期计算的类,直接代码说明: import java.util.Calen...

C++ 计算任意两个日期之间的天数

C++写的一个计算两个日期之间天数的小程序: #include #include struct tagDate { int year; int month; int day; }; ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:求解任意两日期间相隔的天数
举报原因:
原因补充:

(最多只允许输入30个字)