计算2001年1月1日到某年所经过的天数?

 

int count(int year, int month,int day)

{

  static int monthly[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

  static int monthAll[13]={0,31,59,90,120,151,181,\

                                         212,243,273,304,334,365};

int diff=year-2001;

int AllDay=diff*365+monthAll[month-1]+day;

//当年是否为闰年和2001年至今是否有闰年

if(month > 2) //闰年2月为29天

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

                   AllDay++;

for(int i=0;i<diff;i++)

         if((2001+i)%4==0&&(2001+i)%100!=0)

                    AllDay++;

return AllDay;

}