トップページに戻る    次のC#のサンプルへ    前のC#のサンプルへ

11-3 月曜日から金曜日までを出力

問題

年、月、日を入力すると、
指定された日の存在する週の月曜日から金曜日までを出力するコードを書いてください。
週が月や年をまたぐケースが正しく動いているかに気をつけて下さい。


ソース

using System;

class Program
{
    static void Main()
    {
        DateTime wk = new DateTime(2011, 9, 20);
        while (wk.DayOfWeek != 0) {
            wk = wk.AddDays(-1);
        }
        for (int I = 0; I <= 6; I++) {
            Console.WriteLine(wk.AddDays(I).ToString("yyyy/MM/dd"));
        }
    }
}


実行結果

2011/09/18
2011/09/19
2011/09/20
2011/09/21
2011/09/22
2011/09/23
2011/09/24


解説

DateTime型を駆使してます。

MSDN --- DateTimeメンバー
MSDN --- DateTime.DayOfWeekプロパティ