题目:
编写一个日期类,要求按xxxx-xx-xx 的格式输出日期,实现加一天的操作。
输入格式:
输入第一行表示测试用例的个数m,接下来m行每行有3个用空格隔开的整数,分别表示年月日。测试数据不会有闰年。
输出格式:
输出m行。按xxxx-xx-xx的格式输出,表示输入日期的后一天的日期。
输入样例:
2
1999 10 20
2001 1 31
输出样例:
1999-10-21
2001-02-01
注意点:
天数大于当月天数时月份进位,天数重置为1,月份数大于12时年份进位,月份重置为1。
AC代码:
#include<iostream>
using namespace std;
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
int m,yy,mm,dd;
cin>>m;
for(int i=0;i<m;i++){
cin>>yy>>mm>>dd;
dd++;
if(dd>month[mm-1]){
dd=1;
mm++;
}
if(mm==13){
yy++;
mm=1;
}
printf("%04d-%02d-%02d\n",yy,mm,dd);
}
return 0;
}