序文:
21.再テストに参加できるかどうかに関係なく、道路に書かれたゴミコードを記録します。もともと「AlgorithmNotes」をかじったのですが、やりすぎたので、Kingway ComputerTestGuideに変更しました。
タイトル説明:
日付クラスを作成するには、日付をxxxx-xx-xxの形式で出力して、1日を加算する操作を実現する必要があります。
説明を入力してください
テストケースの数mを示す最初の行を入力します。次のm行の各行には、年、月、日を表すスペースで区切られた3つの整数があります。テストデータには飛躍的な年はありません。
出力の説明:
m行を出力します。xxxx-xx-xxの形式で出力します。これは、入力日の1日後の日付を意味します。
回答:
#include <stdio.h>
const int daytab[13] ={
0,31,28,31,30,31,30,31,31,30,31,30,31};
int main()
{
int m;
scanf("%d", &m);
while (m--) {
int year, mon, day;
scanf("%d%d%d", &year, &mon, &day);
if (day == daytab[mon] && mon != 12)
{
day = 1;
mon++;
}
else if (day == daytab[mon] && mon == 12)
{
day = 1;
mon = 1;
year++;
}
else
day++;
printf("%04d-%02d-%02d\n", year, mon, day);
}
return 0;
}