質問: 10 && q <= 14)){ printf("1582年10月14日以前には対応していません\n"); } else if(h==1){ printf("%4d年%2d月%2d日は日曜日です \n", year, m, q); } else if(h==2){ printf("%4d年%2d月%2d日は月曜日です \n", year, m, q); } else if(h==3){ printf("%4d年%2d月%2d日は火曜日です \n", year, m, q); } else if(h==4){ printf("%4d年%2d月%2d日は水曜日です \n", year, m, q); } else if(h==5){ printf("%4d年%2d月%2d日は木曜日です \n", year, m, q); } else if(h==6){ printf("%4d年%2d月%2d日は金曜日です \n", year, m, q); } else if(h==0){ printf("%4d年%2d月%2d日は土曜日です \n", year, m, q); } return 0; } ``` **実行結果** ``` $ ./a.out 年: 2020 月: 2 日: 7 2020年 2月 7日は水曜日です $ ./a.out 年: 2020 月: 1 日: 31 2020年 1月31日は木曜日です $ ./a.out 年: 2020 月: 3 日: 7 2020年 3月 7日は土曜日です $ ./a.out 年: 2020 月: 4 日: 6 2020年 4月 6日は月曜日です ``` このように、3月以降の曜日の出力結果は正しく出力されるのですが、1,2月がなぜか間違った表示になってしまいました。 なぜ、このようになるのでしょうか。 また、どこを修正すれば正しい表示となるのでしょうか。 よろしくお願いします。
回答: > > なぜ、このようになるのでしょうか。 > > > うるう年の1月2月は、+1してはダメですよね