以下是使用C#編寫的代碼,可以輸出2023年的日歷,每一周為一行:
using System;
class Program
{
static void Main(string[] args)
{
// 設置要輸出的年份
int year = 2023;
// 獲取指定年份的第一天
DateTime firstDay = new DateTime(year, 1, 1);
// 獲取指定年份的最后一天
DateTime lastDay = new DateTime(year, 12, 31);
// 當前日期,初始為第一天
DateTime currentDate = firstDay;
// 輸出日歷
Console.WriteLine($"Calendar for {year}");
while (currentDate <= lastDay)
{
// 輸出當前日期所在周的一行
for (int i = 0; i < 7; i++)
{
Console.Write(currentDate.Day.ToString().PadLeft(2) + " ");
// 將日期增加一天
currentDate = currentDate.AddDays(1);
// 判斷是否已經超過了指定年份的最后一天
if (currentDate > lastDay)
break;
}
Console.WriteLine();
}
Console.ReadKey();
}
}
這段代碼首先設置要輸出的年份為2023,然后使用DateTime
類獲取指定年份的第一天和最后一天。然后使用一個while
循環來輸出日歷,循環中使用一個內嵌的for
循環來輸出每一周的一行,內部根據當前日期是否超過了指定年份的最后一天來決定是否退出循環。輸出的日期使用PadLeft
方法來對齊,確保兩位數的日期都能正確顯示。最后,使用Console.ReadKey
方法等待用戶按下任意鍵終止程序的執行。