以下是使用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);
// 判斷是否已經(jīng)超過了指定年份的最后一天
if (currentDate > lastDay)
break;
}
Console.WriteLine();
}
Console.ReadKey();
}
}
這段代碼首先設置要輸出的年份為2023,然后使用DateTime
類獲取指定年份的第一天和最后一天。然后使用一個while
循環(huán)來輸出日歷,循環(huán)中使用一個內(nèi)嵌的for
循環(huán)來輸出每一周的一行,內(nèi)部根據(jù)當前日期是否超過了指定年份的最后一天來決定是否退出循環(huán)。輸出的日期使用PadLeft
方法來對齊,確保兩位數(shù)的日期都能正確顯示。最后,使用Console.ReadKey
方法等待用戶按下任意鍵終止程序的執(zhí)行。