//输入年月日
int year = Convert.ToInt32(Console.ReadLine());
int month = Convert.ToInt32(Console.ReadLine());
int day = Convert.ToInt32(Console.ReadLine());
int sum = 0;
int count = 0;//计数器
for (int i = 1; i < year; i++)
{
//判断公元1年到输入年份的前一年是闰年还是平年
if (i % 4 == 0&&i%100!=0 || i % 400 == 0)//判断某年时闰年还是平年的条件
{
sum = 366;
}
else
{
sum = 365;
}
for (int j = 1; j <= sum; j++)
{
count++;
if (count==7)//count表示天数,七天一个循环,当count=7时,计数器归零,重新计数
{
count = 0;
}
}
}
int[] toDay ;//定义数组存储一年每个月的天数
//判断输入的年份是闰年还是平年
if (year % 4 == 0&&year%100!=0 ||year % 400 == 0)
{//闰年二月是29天
toDay = new int[] { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
}
else
{//平年二月是28天
toDay = new int[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
}
int sum1 = 0;
for (int i = 0; i < month-1; i++)
{
sum1 += toDay[i];
}
int sum2 = sum1 + day;//输入日期是当年的第几天
for (int i = 1; i <= sum2; i++)
{
count++;
if (count==7)
{
count = 0;
}
}
switch (count)
{
case 1:
Console.WriteLine("星期一");
break;
case 2:
Console.WriteLine("星期二");
break;
case 3:
Console.WriteLine("星期三");
break;
case 4:
Console.WriteLine("星期四");
break;
case 5:
Console.WriteLine("星期五");
break;
case 6:
Console.WriteLine("星期六");
break;
case 0:
Console.WriteLine("星期日");
break;
default:
break;
}
输入某年某月某日,输出当天是星期几?
最新推荐文章于 2022-08-12 21:35:49 发布