日期计算
时间限制:
3000
ms | 内存限制:
65535
KB
难度:
1
-
描述
-
如题,输入一个日期,格式如:2010 10 24 ,判断这一天是这一年中的第几天。
-
输入
- 第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每行的输入数据都是一个按题目要求格式输入的日期。 输出
- 每组输入数据的输出占一行,输出判断出的天数n 样例输入
-
3 2000 4 5 2001 5 4 2010 10 24
样例输出
-
96 124 297
思路:很简单的题目,注意对闰年的处理.
#include <stdio.h>
int isleap(int year)
{
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
{
return 1;
}
return 0;
}
int main()
{
int m;
scanf("%d",&m);
while (m--)
{
int year, month, day;
int sum = 0;
int a[12] = {0,31,59,90,120,151,181,212,243,273,304,334};
scanf("%d%d%d",&year,&month,&day);
sum = a[month-1] + day;
if (isleap(year) && month >2)
{
sum += 1;
}
printf("%d\n",sum);
}
return 0;
}