首页 > 编程 > C# > 正文

c#实现输出本月的月历

2020-01-24 03:13:34
字体:
来源:转载
供稿:网友

格式要求:

复制代码 代码如下:

SU MO TU WE TH FR SA
         01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

代码:
复制代码 代码如下:

    class Interview1
    {
        static void Main()
        {
            PrintCalender(2011, 10);
        }
        public static void PrintCalender(int year, int month)
        {
            formatDate fd = new formatDate(year, month);
            string calender =
           @"SU MO TU WE TH FR Sa
            {0} {0} {0} {0} {0} {0} {0} {0}
            {0} {0} {0} {0} {0} {0} {0} {0}
            {0} {0} {0} {0} {0} {0} {0} {0}
            {0} {0} {0} {0} {0} {0} {0} {0}
            {0} {0} {0} {0} {0} {0} {0} {0}";

            calender = string.Format(calender, fd).TrimEnd();
            Console.WriteLine(calender);
        }
    }
    class formatDate : IFormattable
    {
        int num;
        int max;
        public formatDate(int year, int month)
        {
            DateTime dt = new DateTime(year, month, 1);
            num = (int)dt.DayOfWeek * -1;
            max = DateTime.DaysInMonth(year, month);
        }
        public string ToString(string format,IFormatProvider formatProvider)
        {
            return num++ < 0 || num > max ? "  " : num.ToString("00");
        }
    }

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表