日期计算
时间限制: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
时间限制: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
code:
01.
#include <iostream>
02.
03.
using
namespace
std;
04.
05.
int
main()
06.
{
07.
int
nTestNum;
08.
int
nYear,
09.
nMonth,
10.
nDay;
11.
12.
cin >> nTestNum;
13.
while
(nTestNum--)
14.
{
15.
cin >> nYear >> nMonth >> nDay;
16.
while
(nMonth >= 1)
17.
{
18.
switch
(--nMonth)
19.
{
20.
case
1:
case
3:
case
5:
case
7:
21.
case
8:
case
10:
case
12:
22.
nDay += 31;
23.
break
;
24.
case
4:
case
6:
case
9:
case
11:
25.
nDay += 30;
26.
break
;
27.
case
2:
28.
if
((nYear % 4 == 0 && nYear % 100) || nYear % 400 == 0)
//if is a leap year
29.
nDay += 29;
30.
else
31.
nDay += 28;
32.
break
;
33.
}
34.
}
35.
cout << nDay << endl;
36.
}
37.
return
0;
38.
}