日付カテゴリ(コンピューターでの北京再テスト)

序文:

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;
}

おすすめ

転載: blog.csdn.net/weixin_44897291/article/details/112673001