【常用】C#万年历代码
2015-08-08 20:43
633 查看
public class WanNianLi { int year;//年份 int month;//月份 int days = 31;//默认31天,所以判断时直接除了4,6,9,11,2, /* * 显示菜单 */ public void menu() { Console.WriteLine("请输入年"); year = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("请输入月份"); month = Convert.ToInt32(Console.ReadLine()); switch (month) { case 4: case 6: case 9: case 11: days = 30; break; case 2: // 如果 年能被4整除 但不能被100 整除 + 年被400整除 if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { days = 29; break; } else { days = 28; } break; default: days = 31; break; } show(); } public void show() { // 1900-1-1 星期一 1900-1-9(规定) String[] weeks = { "日", "一", "二", "三", "四", "五", "六" }; for (int i = 0; i < weeks.Length; i++) { Console.Write(weeks[i] + "\t"); } Console.Write("\n==================================\n"); int chaDays = 0; for (int i = 1900; i < year; i++) { if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) { chaDays += 366;// 闰年366天 continue; } chaDays += 365; } //上面方法计算出从1900年1月1日到输入的年,下面方法为把输入的月加上 //上一个for加完chaDays,下面的for循环继续在chaDays上累加 //这里注意是for循环的把每个月的累加上 for (int i = 1; i < month; i++) { switch (i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: chaDays += 31; break; case 4: case 6: case 9: case 11: chaDays += 30; break; case 2: // 如果 年能被4整除 但不能被100 整除 + 年被400整除 if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { chaDays += 29; } else { chaDays += 28; } break; } } // Console.WriteLine("差的天数为:" + chaDays); int weekOfDay = (chaDays + 1) % 7;//加一的原因是周日为数组中的第一个 // Console.WriteLine(weekOfDay); for (int i = 0; i < weekOfDay; i++) { Console.Write("\t");//空格补位 } for (int i = 1; i <= days; i++) { Console.Write(i + "\t"); if ((i + weekOfDay) % 7 == 0) {//每一行 七个就换行 Console.WriteLine(); } } } }
相关文章推荐
- C# 入门篇之listview用法
- C#-WinForm登录窗体实现记住密码的功能(仿QQ实现)
- C# 结构体
- c#中的事件
- C# 枚举
- 利用VS C# 实现串口控制视频的播放 use VLC
- 用C#生成KML路径文件(上篇)
- C# 常量
- C# 值类型和引用类型
- C#模板引擎 RazorEngine3.7的扩展 — 引用布局页
- hdu-2037/akoj-1251-今年暑假不AC(C#结构体排序)
- C#调用RESTful API
- C#生成缩略图 (通用模式)
- 【温故知新】C#基于事件的异步模式(EAP)
- C#写入和读出文本文件
- C#实现DevExpress本地化实例详解
- C#使用webbrowser的常见用法实例
- C#-WinForm设置托盘程序
- [C#]制作可以调整大小的自定义控件
- c# checked unchecked 关键字