//设计一个程序能计算一个日期加上若干天后是什么日期。
#include<stdio.h>
int runnian(year) {
if (year % 4 == 0 || year % 100 != 0 && year % 400 == 0)
return 1;
else
return 0;
}
int main() {
int m;
int year, month, day, count;
int a[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //每个月的天数
scanf("%d", &m);
for (int i = 1; i <= m; i++) {
scanf("%d %d %d %d", &year, &month, &day, &count); // 2008 2 3
while (count > 0) {
if (runnian(year)) //闰年 2月29天
a[2] = 29;
else
a[2] = 28;
count--; //天数减一
day++;
if (day > a[month]) { //日期数大于本月日期数,下一个月
day = 1;
month++;
}
if (month > 12) { //下一年
year++;
month = 1;
day = 1;
}
}
printf("%04d-%02d-%02d\n", year, month, day);
}
return 0;
}