c#控制台程序-“输入指定年月日查询出星期几”
2014-10-15 09:36
197 查看
其中涉及一个算法:
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。
注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
代码如下:
如图:
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。
注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
代码如下:
Console.WriteLine("**************************"); Console.WriteLine("输入指定年月日查询出星期几"); Console.WriteLine("By:YYS"); Console.WriteLine("今天是{0}年{1}月{2}日 星期{3}", DateTime.Now.Year,DateTime.Now.Month, DateTime.Now.Day, (int)DateTime.Now.DayOfWeek); Console.WriteLine("**************************"); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("请输入年:"); int y = System.Int32.Parse(Console.ReadLine()); Console.WriteLine("请输入月"); int m = System.Int32.Parse(Console.ReadLine()); Console.WriteLine("请输入日"); int d = System.Int32.Parse(Console.ReadLine()); int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7; Console.WriteLine("{0}年{1}月{2}日是星期{3}",y,m,d,week); Console.ReadKey();
如图:
相关文章推荐
- 控制台程序模拟登录--C#(三次输入错误程序关闭)
- 一个输入指定盘符和文件名检索文件存在路径的c#程序
- 输入某个年月日得到那天是星期几的小程序
- 9 在C#控制台程序(console)中让用户输入
- c# 控制台程序输入输出流重定向
- C#练习——统计整型数组中不重复数字的个数、将普通日期格式转换成汉字日期格式、在控制台录入每个学生的姓名,当用户输入quit(不区分大小写)时,程序停止接受用户的输入,并且显示出用户输入的学生的个数
- C#8—写一个测试标准身高体重的程序、输入日期年月日, 计算这一天是一年中的第几天(考虑闰年)
- 控制台程序模拟登录--C#(三次输入错误程序关闭)
- c#控制台程序限制用户输入的方法
- 1. 请用C#的面向对象语言 实现 一个计算器控制台程序,要求输入两个数和运算符号,得到结果
- c#程序调用baidu查询
- C#实现的根据年月日计算星期几的函数(转)
- C# 截取当前程序窗口指定位置的截图?
- C# 一个简单分词程序的思路和代码(四) 键树 查询记录
- C#实现的根据年月日计算星期几的函数
- C#控制台程序按任一键退出
- 提问:如何控制控制台程序的输入/输出焦点的位置
- C#实现的根据年月日计算星期几的函数
- <转>使用 Visual C# .NET 在 XPath 查询中指定完全限定的元素名称
- 如何在C#中用程序执行指定的SQL脚本文件,实现自动安装创建数据库