主要驗證是否有五個星期五五個星期六五個星期天

/// <summary>
/// 主要驗證是否有五個星期五五個星期六五個星期天
/// 下一次發生的年月
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
// 現在時間
DateTime dtNow = DateTime.Now;
//現在時間小於最大值
while (dtNow < DateTime.MaxValue)
{
//該月必須是31天 當前月添加一
DateTime nextMonth = dtNow.AddMonths(1);
//下一年月的月的第一天就是一號
DateTime firstDayOfNextMonth = new DateTime(nextMonth.Year, nextMonth.Month, 1);
//判斷當前月是否為31天和這個月的1號必須是星期五
if (DateTime.DaysInMonth(nextMonth.Year, nextMonth.Month) == 31 && firstDayOfNextMonth.DayOfWeek == DayOfWeek.Friday)
{
Console.WriteLine("下一次發生是在:{0}", firstDayOfNextMonth);
break;
}
dtNow = nextMonth;
}

Console.ReadLine();
}

/// <summary>
/// 上一次發生的年月
/// </summary>
/// <param name="args"></param>
//static void Main(string[] args)
//{
////// 現在時間
////DateTime dtNow = DateTime.Now;
//////現在時間小於最大值
////while (DateTime.MinValue <= dtNow)
////{
//////該月必須是31天 當前月減一
//// DateTime nextMonth = dtNow.AddMonths(-1);
//////下一年月的月的第一天就是一號
//// DateTime firstDayOfNextMonth = new DateTime(nextMonth.Year, nextMonth.Month, 1);
//////判斷當前月是否為31天和這個月的1號必須是星期五
//// if (DateTime.DaysInMonth(nextMonth.Year, nextMonth.Month) == 31 && firstDayOfNextMonth.DayOfWeek == DayOfWeek.Friday)
//// {
//// Console.WriteLine("上一次發生是在:{0}", firstDayOfNextMonth);
//// break;
//// }
//// dtNow = nextMonth;
////}

////Console.ReadLine();
//}
原文地址:https://www.cnblogs.com/Warmsunshine/p/2416424.html