问题描述:
你知道,2012-1-1是该年的第1天,而9999-9-9呢?给你一个具体的日期,计算该日期是该年的第几天。
输入:
输入一个日期,格式为:Year-month-day。year是小于9999的正整数。
输出:
一个整数,表示该日期是该年的第几天。
样例输入:
2012-3-1
样例输出:
61
参考代码:
#include <stdio.h>
int main()
{
int year, month, day;
scanf("%d-%d-%d", &year, &month, &day);
switch (month)
{
case 12: day += 30;//11
case 11: day += 31;//10
case 10: day += 30;//9
case 9: day += 31;//8
case 8: day += 31;//7
case 7: day += 30;//6
case 6: day += 31;//5
case 5: day += 30;//4
case 4: day += 31;//3
case 3: if((year%4==0&&year%100!=0)||(year%400==0)) day+=29;
else day+=28;//2
case 2: day += 31;//1
}
printf("%d\n", day);
return 0;
}