日期类

题目描述:
编写一个日期类,要求按xxxx-xx-xx 的格式输出日期,实现加一天的操作。


输入格式:
输入第一行表示测试用例的个数m,接下来m行每行有3个用空格隔开的整数,分别表示年月日。测试数据不会有闰年。

输出格式:
输出m行。按xxxx-xx-xx的格式输出,表示输入日期的后一天的日期。


输入样例:
2
1999 10 20
2001 1 31

输出样例:
1999-10-21
2001-02-01


train of thought:

code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
int months[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int main()
{
int year, month, day;
scanf("%d%d%d", &year, &month, &day);
day++;
if (day == months[month] + 1)
{
month++;
if (month == 13)
{
year++;
month = 1;
day = 1;
printf("%04d-%02d-%02d\n", year, month, day);
}
else
{
day = 1;
printf("%04d-%02d-%02d\n", year, month, day);
}
}
else
{
printf("%04d-%02d-%02d\n", year, month, day);
}
return 0;
}