题目描述:
设计一个程序能计算一个日期加上若干天后是什么日期。
输入
输入第一行表示样例个数m,接下来m行每行四个整数分别表示年月日和累加的天数。
输出
输出m行,每行按yyyy-mm-dd的个数输出。
样例输入
1
2008 2 3 100
样例输出
2008-05-13
代码
#include<cstdio>
int month[13][2]={{0,0},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31}};
bool leap(int year){
return (year%4==0&&year%100!=0||year%400==0);
}
int main(){
int M;
scanf("%d",&M);
int y,m,d,N,nextd;
while(M--){
scanf("%d %d %d %d",&y,&m,&d,&N);
d+=N;
nextd=0;
while(d>0){
nextd++;
if(nextd==month[m][leap(y)]+1){
m++;
nextd=1;
}
if(m==13){
y++;
m=1;
}
d--;
}
printf("%d-%02d-%02d\n",y,m,nextd);
}
return 0;
}