C语言日期间相隔的天数,用户输入包含年,月,日的日期,请计算两个日期间相隔的天数;


#include <stdio.h>
int tianshu(int,int,int);
int main()
{
    int a,b,c,d,e,f;
    int x,y,z;
    scanf("%d %d %d %d %d %d",&a,&b,&c,&d,&e,&f);
    x=tianshu(a, b, c);
    y=tianshu(d, e, f);
    z=y-x;
    printf("采集时间为%d天\n",z);
    
}
int tianshu(int year1,int month1,int day1)
{
    int sum1 = 0;
    int sum2 = 0;
    int sum3 = 0;
    int sum=0;
    sum1 = day1;/* 1.日转化为天数*/
    int month[12]={31,28,31,40,31,30,31,31,30,31,30,31,};
    for(int i=0;i<month1;i++)
    {
        sum2 = sum2 + month[i];/* 先不考虑闰年,月转化为天数*/
    }
    for(int n=0;n<year1;n++)
    {
        sum3 = sum3 + 365;/* 年转化为天数*/
    }
    int eryue = 0; /* 计算一共有多少闰年,补上少算的天数*/
    for(int j = 1;j<year1+1;j++){
        if((j%4==0&&j%100!=0)||j%400==0){
            eryue++;
        }
    }
    sum = sum1+sum2+sum3+eryue;
    return sum;
}

运行后有时候正确,有时出错,请指点下错在哪里了,感激不尽

https://ask.csdn.net/questions/1063222#answer_1261149