//闰年:4年一润,100不润,400再润
// ((year % 4 == 0 && year % 100 != 0)|| year % 400 ==0)
#include<stdio.h>
int sum(int y,int m,int d);
int main(void)
{
int y=1970,m=1,d=1;
int y1,m1,d1;
int sum1,sum2;
printf("请输入年,月,日: \n");
scanf("%d %d %d",&y1,&m1,&d1);
sum1 = sum(y,m,d);
sum2 = sum(y1,m1,d1);
if(sum1 > sum2)
printf("相差天数:%ld\n",sum1-sum2);
else
printf("相差天数:%ld\n",sum2-sum1);
return 0;
}
int sum(int y,int m,int d)
{
unsigned char x[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,s=0;
for(i=0;i<y;i++)
{
if((i % 4 == 0 && i % 100 != 0 || i % 400 == 0))
s += 366;//润年
else
s += 365;
}
if(y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
x[2]=29;
for(i=1;i<m;i++)
s += x[i];//整月的天数
s += d;//日的天数
return s;//返回总天数,相对于公元1年
}