1. 程式人生 > >SDUT-1182 C語言實驗——數日子

SDUT-1182 C語言實驗——數日子


Code

#include <stdio.h>

int main()
{
    int n,i,year,month,day;
    int days[12]= {31,28,31,30,31,30,31,31,30,31,30,31};
    while(scanf("%d",&n)!=EOF)
    {
        while(n--)
        {
            int ans = 0;
            scanf("%d %d %d",&year,&month,&day);
            if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
                days[1]=29;
            if(month == 1)
                ans = day;
            else
            {
                for(i=1; i<month; i++)
                {
                    ans += days[i-1];
                }
                ans += day;
            }
            printf("%d\n",ans);
        }
    }
    return 0;
}
反思:陣列練習,將12個月的天數存在days陣列中,輸入年月日,先判斷是否是閏年,若是則修改days中的2月天數為29,再判斷月份是否為1,否則就迴圈累加天數,最後輸出天數。