明天(10分)
小明喜欢上了日期的计算。这次他要做的是日期的加1天操作,即求在已知日期的基础上加上1天后的结果日期。如,日期为2019-11-11
,加上1
天,则结果日期为2019-11-12
。
输入格式:
输入数据的第一行为一个正整数T,表示测试数据的组数。然后是T组测试数据,每组测试输入1个日期d,日期形式为yyyy-mm-dd
。保证输入的日期合法,而且输入的日期和结果日期都在[1000-01-01,9999-12-31]
范围内。
输出格式:
对于每组测试,在一行上以yyyy-mm-dd
的形式输出结果日期。
输入样例:
1
2019-11-11
输出样例:
2019-11-12
代码如下:
#include<stdio.h>
int main()
{
int run[12] = {31,29,31,30,31,30,31,31,30,31,30,31},n,year,month,day;
int ping[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d-%d-%d",&year,&month,&day);
if(year%4==0&&year%100!=0||year%400==0)
{
day+=1;
if(day>run[month-1])
{
month+=1;
day=1;
if(month>12)
{
year+=1;
month=1;
}
}
printf("%4d-%02d-%02d",year,month,day);
}
else
{
day+=1;
if(day>ping[month-1])
{
month+=1;
day=1;
if(month>12)
{
year+=1;
month=1;
}
}
printf("%4d-%02d-%02d",year,month,day);
}
}
}