"景先生毕设|www.jxszl.com

c语言的万年历设计

2021-05-04 21:07编辑: www.jxszl.com景先生毕设
摘 要本课题主要设计了一款万年历控制系统,通过C语言进行程序代码的构建,通过从上而下的模块分析法设计,将整个万年历系统划分成主菜单功能、输出年历功能、输出月历功能、日期查询功能、日期推算功能以及退出系统六个部分,使用了C语言对主功能以及子功能进行了分别的设计,并最终在主程序中将各个子程序进行不断调用,实现了对年历和月历的打印、日期的查询、日期推算、闰年的判断以及参数的输入输出等功能,这款万年历系统是在Visual C++ 6.0软件上进行实现的,通过C语言代码的构建并经过了编译和Debug调试,最终实现了一款能够运行在DOS系统上的万年历设计。
目录
一、 引言 1
二、 需求分析 2
三、 系统功能设计 3
(一) 主菜单功能设计 3
(二) 输出年历功能设计 4
(三) 输出月历功能设计 4
(四) 日期查询功能设计 5
(五) 日期推算功能设计 6
四、 软件系统设计 8
(一) Visual C++ 6.0简介 8
(二) 主菜单程序设计 9
(三) 闰年计算子程序设计 13
(四) 星期计算子程序设计 14
(五) 输出年历子程序设计 14
(六) 输出月历子程序设计 16
(七) 日期查询子程序设计 16
五、 万年历系统运行效果展示 17
(一) 主界面显示 17
(二) 年历显示功能 17
(三) 月历查询功能 21
(四) 日期查询功能 23
(五) 日期推算功能 24
总结 27
参考文献 28
致 谢 29
附录 程序代码 30
引言
在日常生活中能接触到很多不同类型的日历,在日历上我们通常希望它能简单明了的给我们最想要的日期信息。在我的万年历系统当中,就是将日历,月历做的简单明了,很方便我们的查询使用。
下面是它要实现的一些基本功能: 
(1)输入年份,判断是否为闰年; 
(2)输入年月日,判断是星 *51今日免费论文网|www.jxszl.com +Q: *351916072
期几 ;
(3)输入年份,打印出12个月的月历;
(4)输入年月,打印出本月的日历;
需求分析
在对万年历系统的功能以及C语言程序代码进行设计之前,论文本部分首先对该系统的设计指标以及总体需求进行分析,以便下文能够更好的对万年历系统的各项性能指标进行把握。
在课题的预期指标中第一项是对某个年份是否为闰年的判断功能,由于闰年和普通年的总天数相差一天,普通年的2月份为28天,而闰年的2月份为29天,因此在进行月历打印时必须要判断该年是否为闰年,这项功能是整个万年历系统输出结果是否正确的基准,因此需要通过C语言根据闰年判断算法来实现这项功能,以此来完成年历、月历、日期查询等功能。
课题预期指标中的第二项为判断某日期是星期几,这个指标也是万年历系统输出结果正确与否的一个关键指标,是显示正确年历数据的重要基准,因此要根据星期计算算法并结合C语言来实现某年份第一天是星期几的函数。
课题预期指标中的第三项为打印月历的功能,该指标是万年历系统的一项基本功能,是以闰年计算方法以及星期几计算方法为基础的一项功能。
系统功能设计
为了实现对万年历系统更轻松的设计,本课题将通过模块分析法来对万年历系统的整体功能进行划分,将预期各项指标功能划分成一个单独的功能模块,通过对输入输出接口的设计,使得各模块最终能够实现联系,从而使得万年历系统流畅的运行,这种设计方法更有利于提升万年历系统的工作效率和速度,与此同时对代码的可读性也大大提升,由此本课题将整个万年历系统划分为主菜单功能、输出年历功能、输出月历功能、日期查询功能、日期推算功能以及退出系统六个部分,论文本部分将通过流程图的形式对各个功能的工作过程进行设计分析。
主菜单功能设计
主菜单显示功能是运行万年历系统后的第一个功能,该功能的可视化特点较强,主要用于对使用者提供欢迎信息、时间日期信息以及功能菜单,本课题设计的这款万年历系统的主菜单将包含时间日期信息、功能菜单名称以及对应的编号数字,下图流程图是该功能的工作过程。

图1 主菜单功能设计
首先系统将实时的时间日期信息进行读取并显示在DOS系统界面上,随后提示用户输入待使用功能的编号,随后对编号进行判断,判断用户输入的数字是否处于1~5的范围内,若不在该范围内则提示用户输入错误,需要重新输入。当用户输入数字1时则启动打印年历的功能,输入数字2则启动打印月历的功能,输入数字3则对日期进行查询,输入数字4则可以进行日期推算功能,输入数字5则直接退出系统。
输出年历功能设计
输出年历功能主要是将某个年份的年历进行打印,启动该功能时万年历需要首先检测用户是否在主界面输入了数字1,随后提示用户需要输入待打印的年份,输入格式正确时,系统将用户输入的年份进行读取,判断该年是否为闰年,如果为闰年那么2月份将为29天,而普通年为28天,随后计算出该年份的1月1日是星期几,计算出这两个信息之后即可依次计算出该年的365天(闰年为366天)是星期几,随后通过一定格式将该年12个月的月历打印出来,显示在DOS系统界面上,这样就实现了输出年历功能。

图2 输出年历功能设计
输出月历功能设计
输出月历功能相对于输出年历功能来说,属于其中一部分,因此工作流程也大致形似,首先系统在主界面检测用户是否输入了数字2,当执行该功能后将首先提示用户输入待查月历对应的年份和月份两个数据,格式输入正确后系统将对这两个信息进行读取,判断该年是否为闰年并且该年的1月1日是星期几,最后提取出待打印的月份月历即可,通过一定格式将该年该月的月历显示在DOS系统界面上。

原文链接:http://www.jxszl.com/dzxx/txgc/63393.html