问答题

本题要求编写程序计算某年某月某日是该年中的第几天。输入格式:
输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。输出格式:
在一行输出日期是该年中的第几天。输入样例1:
2009/03/02
输出样例1:
61
输入样例2:
2000/03/02
输出样例2:
62

【参考答案】

\n \n \n
#include
int main()
{
int year;
int month;
int day;
int totalDay;
int Feb;
scanf("%d/%d/%d", &year, &month, &day);

if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
{
Feb = 29;
}
else Feb = 28;
switch (month)
{
  //1,3,5,7,8,10,12:31
  //4,6,9,11:30
case 1:totalDay = day; break;
case 2:totalDay = 31+day; break;
case 3:totalDay = 31+Feb+day; break;
case 4:totalDay = 62 + Feb + day; break;
case 5:totalDay = 92 + Feb + day; break;
case 6:totalDay = 123 + Feb + day; break;
case 7:totalDay = 153 + Feb + day; break;
case 8:totalDay = 184 + Feb + day; break;
case 9:totalDay = 215 + Feb + day; break;
case 10:totalDay = 245 + Feb + day; break;
case 11:totalDay = 276 + Feb + day; break;
case 12:totalDay = 306 + Feb + day; break;
}
printf("%d", totalDay);
return 0;
}
\n \n \n