刚开始接触C#不久,自己尝试做了一个日历,说是说万年历哈其实只从1900开始算起哈,因为题目就是这样的。先贴一下题目;

实现传入一个年份后,输出改年份每个月的信息,星期和日期;

提示:1900.1.1刚好是星期一

下面是代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace _007_test6_万年历_
{class Program{static void Main(string[] args){Console.Write("请输入你要查询的年份:");int currentYear = Convert.ToInt32(Console.ReadLine());Console.WriteLine();int x, y;for (int i = 1; i <= 12; i++)//遍历每个月{x = WhatDay(currentYear, i);//得出某年某月的第一天是星期几y = EveryMonthDays(currentYear, i);//得出某年某月的天数int index;//计数器Console.WriteLine("            2018年{0}月\n",i);Console.WriteLine("一   二   三   四   五   六   日");Console.WriteLine("---------------------------------");index = x;int monthIndex2 = 1;while (monthIndex2<=y){for (int j = 1; j < index; j++){Console.Write("  "+"   ");}for (int k = index; k <=7; k++){if (monthIndex2>y){break;}if (monthIndex2<=9){Console.Write(" "+monthIndex2+ "   ");}else{Console.Write(monthIndex2 + "   ");}monthIndex2++;}Console.WriteLine();index = 1;}Console.WriteLine("\n\n");}Console.ReadKey();}static bool IsLeapYear(int year)//判断某年是不是闰年{if (year%4==0&&year%100!=0||year%400==0){//   Console.WriteLine("shi 闰年");return true;}else{//   Console.WriteLine("不是 闰年");return false;}}static int WhatDay(int currentYear,int month)//判断从某年某月第一天是星期几{int num;int totalDays=0;for (int i = 1900; i < currentYear; i++) {if (IsLeapYear(i)){totalDays += 366;}else{totalDays += 365;}}for (int j = 1; j < month; j++){totalDays += EveryMonthDays(currentYear,j);}num = totalDays % 7;return num+1;}static int EveryMonthDays(int year, int month)//判断某年每个月的天数{int i = month;int monthDay;if (i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10 || i == 12){monthDay = 31;}else if (i == 4 || i == 6 || i == 9||i==11){monthDay = 30;}else if (i==2&&IsLeapYear(year)==true){monthDay = 29;}else{monthDay = 28;}return monthDay;}}
}

自己用C#做的一个万年历相关推荐

  1. 万年历c语言大作业实验,用C语言写的一个万年历

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. #include #include int input(); void re_year(i ...

  2. 090613 今天做了一个软件没搞定的RAID5

    今天做了一个RAID5 ,之前一个人用<**恢复大师>.<r-studio>以及<RAID Reconstructor>反正能用的软件都用过了,最后的结果是恢复出来 ...

  3. c语言写的跳转心理测试,求各位大神赐教!我做了一个“心理测试的答题卷”编程,总共有1...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 求各位大神赐教!我做了一个"心理测试的答题卷"编程,总共有10道题,每道题有3个供选择的答案,每个答案得分从小到大是8分.5分和3分, ...

  4. 基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器——《干饭聊天室》

    基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器--<干饭聊天室> 在这里首先感谢前端小伙伴飞鸟 前端技术请看一款基于React.C++,使用TCP/HTTP协 ...

  5. 最近做了一个博客 玩玩而已 运城搜搜 www.lenovoyh.com

    最近做了一个博客 玩玩而已 运城搜搜 www.lenovoyh.com  用了以前一个没用的域名做的  现在还没排名 等待吧 呵呵 转载于:https://www.cnblogs.com/kiah/a ...

  6. 用c语言编写心里测试,求各位大神赐教!我做了一个“心理测试的答题卷”编程,总共有1...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 求各位大神赐教!我做了一个"心理测试的答题卷"编程,总共有10道题,每道题有3个供选择的答案,每个答案得分从小到大是8分.5分和3分, ...

  7. 做了一个系列的Android开发教程列表

    做了一个系列的Android开发教程列表.花了半天多的专题 里面包含了 4个系列的教程. 也包含了很多Android开发资料. 喜欢的人可以收藏哦:http://dev.apkbus.com/

  8. 06年做的一个配置,从net130转过来的

    06年在2821xm上做的一个配置,包括封BT.策略路由.基于时间的访问控制列表和adsl拨号的配置.硬件配置是: 2821路由器+wic-1adsl模块 配置如下: Current configur ...

  9. 【发现】ASP.NET DEVELOPMENT SERVER 未能开始侦听端口xxxxx以一种访问权限不允许的方式做了一个访问套接字的尝试——解决方法...

    在调试ASP.NET的时候常出现如下错误 错误消息框:   ASP.NET   DEVELOPMENT   SERVER   未能开始侦听端口xxxxx以一种访问权限不允许的方式做了一个访问套接字的尝 ...

最新文章

  1. html5中的新标签
  2. oracle rac vip什么用,oracle 10g,11g RAC中vip作用
  3. docker部署openvas
  4. js三元运算符_这些优化技巧可以避免我们在 JS 中过多的使用 IF 语句
  5. 【微信小程序】wx:for
  6. python调用cv2.findContours时报错:ValueError: not enough values to unpack (expected 3, got 2)
  7. **python基础类和对象(十二)
  8. ubantu安装_Virtualbox-Ubantu-Anaconda 数据分析环境搭建
  9. 查看已有设置_腾讯企点呼叫中心如何查看企点电话产生的数据报表?
  10. 华为云薅羊毛攻略来袭,走过路过不要错过
  11. java炫酷龙卷风源码_Java-使用二叉树实现快速排序-遁地龙卷风
  12. android 7双排设置菜单,双排状态栏
  13. 因Redis分布式锁造成的P0级重大事故,整个项目组被扣了绩效......,请慎用
  14. 2019-CS224n-Assignment3
  15. Github创建的个人简历
  16. 去除CSDN 博客页广告的历程
  17. GBase 8c数据库登陆
  18. APP批量自动生成各种不同分辨率尺寸图标和启动页(Android和iOS都支持) - 使用cordova-res图文教程
  19. 【从零开始学习 SystemVerilog】2.8、SystemVerilog 数据类型—— Unpacked Arrays(非压缩数组)
  20. Mac下安装Mysql 记录过程

热门文章

  1. PLM听过很多遍,却依旧不知道是什么?看完这篇你就懂
  2. 大厂架构师之路7. 创业 - 全工种作业
  3. [iTyran翻译]OpenGL ES 从零开始系列08:交叉存取顶点数据
  4. 三菱MR-JE-C伺服应用详细介绍
  5. 银行异地取钱扣费-中行太坑了!!!
  6. 敏捷实施时的五个不当做法
  7. 题目:洛谷1088 火星人(排列组合问题)
  8. One UI 5 升级来了
  9. Fortran学习:chapter6
  10. 【开发工具】 什么是Office 今天让你认识它