#include
int main()
{
int sum_day(int month, int day);
int leap(int year);
int year, month, day, days;
printf("input date(year,month,day):");
scanf("%d%d%d",&year, &month, &day);
days = sum_day(month, day);
if (leap(year) && month >= 3)
days = days + 1;
printf("is the%th day in this year\n", days);
}
int sum_day(int month, int day)
{
int day_tab[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
int i;
for (i = 0; i < month; i++)
day += day_tab[i];//累加所在月之前的天數
return(day);
}
int leap(int year)
{
int leap;
leap = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
return(leap);
}
leap是閏年的意思。(Leap Year)
閏年的規則如下:
①、非整百年能被4整除的為閏年。(如2004年就是閏年,2010年不是閏年)
②、整百年能被400整除的是閏年。(如2000年是閏年,1900年不是閏年)
http://baike.baidu.com/subview/29649/7344239.htm