题目描述
设计一个程序能计算一个日期加上若干天后是什么日期。
输入
输入第一行表示样例个数m,接下来m行每行四个整数分别表示年月日和累加的天数。
输出
输出m行,每行按yyyy-mm-dd的个数输出。
样例输入
1 2008 2 3 100
样例输出
2008-05-13
#include <stdio.h>
#include <iostream>
#include <string.h>
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 isleap(int year){//判断是否是闰年
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
int main(){
int m,dd,mm, yy,addD,newD;
scanf("%d", &m);
while (m--){
scanf("%d %d %d %d", &yy, &mm, &dd, &addD);
newD = dd + addD;
while (newD > month[mm][isleap(yy)]){
newD = newD - month[mm][isleap(yy)];
mm++;
if (mm > 12){
yy++;
mm = 1;
}
}
printf("%04d-%02d-%02d\n", yy, mm, newD);
}
//system("pause");
return 0;
}