回覆列表
  • 1 # 使用者834195712159

    計算兩個年月日之間的天數,思路du是分別算出日期的總天數然後相減。

    要考慮閏年的情況,判斷閏年的口訣:4年一閏,100年不閏,400年再閏。

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

    #include <stdio.h>

    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=1;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年

    }

    void main()

    {

    unsigned char y1,m1,d1,y2,m2,d2;

    int s1,s2;

    printf("輸入第一個年 月 日:");

    scanf("%d %d %d",&y1,&m1,&d1);

    printf("輸入第二個年 月 日:");

    scanf("%d %d %d",&y2,&m2,&d2);

    s1=sum(y1,m1,d1);

    s2=sum(y2,m2,d2);

    if (s1 > s2)

    printf("相差天數:%ld\n",s1-s2);

    else

    printf("相差天數:%ld\n",s2-s1);

    }

  • 中秋節和大豐收的關聯?
  • 軟體後面加個HD是什麼意思?