可以查看第几年日历(用此代码,可查看第几年日历)
using System;
namespace Base1
{
class Program
{
static int[] vs = new int[12] {
31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
static void Main()
{
Console.Write("你需要查第几年:");
int year = int.Parse(Console.ReadLine());
Consult(year);
}
private static void Consult(int year)
{
for (int i = 1; i <= 12; i++)
{
string date = string.Format("{0}年{1}月",year,i);
Console.WriteLine(date);
if (i == 2) February(year);
ConsultMonth(vs[i-1],GetWeekByDay(year,i,1));
}
}
private static void ConsultMonth(int dateMax, int firstDay)
{
Console.WriteLine("日\t一\t二\t三\t四\t五\t六");
for (int i = 1; i <= dateMax + firstDay ; i++)
{
if (i <= firstDay ) Console.Write(" ");
else Console.Write(i-firstDay);
if (i % 7 == 0) Console.Write("\t\n");
else Console.Write("\t");
}
Console.WriteLine("");
}
private static void February(int year)
{
if ((year % 100 != 0 && year % 4 == 0) || year % 400 == 0)
vs[1] = 29;
else
vs[1] = 28;
}
private static int GetWeekByDay(int year, int month, int day)
{
DateTime dt = new DateTime(year, month, day);
return (int)dt.DayOfWeek;
}
}
}