c语言程序设计课程设计-万年历

c语言程序设计课程设计-万年历

ID:11863835

大小:362.54 KB

页数:16页

时间:2018-07-14

c语言程序设计课程设计-万年历_第1页
c语言程序设计课程设计-万年历_第2页
c语言程序设计课程设计-万年历_第3页
c语言程序设计课程设计-万年历_第4页
c语言程序设计课程设计-万年历_第5页
资源描述:

《c语言程序设计课程设计-万年历》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、课程设计课程名称____C语言程序设计_____题目名称万年历学生学院专业班级学号学生姓名指导教师________________2011年6月24日一、题目及已完成的功能描述课程设计题目:万年历通过万年历程序的设计,培养学生综合利用C语言进行程序设计的能力,要求学生利用系统提供的标准函数及典型算法进行设计,加强函数的运用及学生对软件工程思想的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力。基本功能要求:1、输入一个年份,在屏幕上输出该年的年历(包括每月的天数和所对应的星期几),并且在每月的左上角或右上角打印出相应的年份和月份,要求输出界面尽可能整齐、美观,符

2、合年历显示规范。假定输入的年份在1-9999年之间。2、输入年月,输出该月的月历。3、输入年月日,输出距今天还有多少天,是星期几,是否是公历节日。扩充功能要求:4、指定键盘的某些键,用于控制变换不同年、月、日的显示。即:当前若正在显示2011年的年历,按下键盘“←”方向键后,年历变为2010年的。5、同时显示农历。已完成的功能:1、输入一个年份,在屏幕上输出该年的1月的月历(包括每月的天数和所对应的星期几),并且在每月的左上角打印出相应的年份和月份,日历下面输出这一年是否为闰年,输出界面尽可能整齐、美观,符合年历显示规范。按下键盘“→”方向键后,显示2月的月历;再按下键盘“

3、→”方向键后,显示3月的月历……如此类推。2、输入年月,输出该月的月历。按下键盘“←”方向键后,显示上一个月的月历;按下键盘“→”方向键后,显示下一个月的月历;按下键盘“PageUp”方向键后,显示上一年的这个月的月历;按下键盘“PageDown”方向键后,显示下一年的这个月的月历。3、输入年月日,输出距今天还有多少天;如果这一天是公历节日,就输出是什么节日,如果这一天不是公历节,就输出不是公历节;接着输出这一天所在的月的月历,这样自然就看到这一天是星期几了;再在月历右上角输出这一天是(xxxx-xx-xx)。二、使用的所有变量的说明Year(intx)函数里面用了int型

4、,变量有x,leap。用来判断x年是否为闰年;如果是闰年,leap=1;如果不是闰年,leap=0;最后返回leap的值供别的函数用。Wily(intx)函数里面用了int型,变量有x,输出x年是否为闰年。numofMonth(inty,intm)函数里面用了int型,变量有y,m,day,t。判断y年m月这个月共有几天,返回day的值即天数供别的函数用。numofYear(inty)函数里面用了int型,变量有y、t。判断y年这一年共有几天,返回t的值即天数供别的函数用。juli(inty1,intm1,intd1)函数里面用了int型,变量有y1,m1,d1,i;lon

5、g型,变量有sum。用于计算某日距离公元1年1月1日多少天,返回sum的值即天数供别的函数用。当两个日期返回的值相减得到的数就是这两日相距的天数。jieri(intm,intd)函数里面用了int型,变量有m,d。用于判断m月d日是否为公历节日;如果是,就输出相应的节日,如果不是,就输出不是节日。isDay(inty,intm),empty(intn),OutPutCalender(inty,intm,intd),OutPutCalender1(inty,intm,intd),这几个函数是计算日历某天对应的星期,且输出日历的作用。Select_mean()函数里面用了int

6、型,变量有sm。程序运行后输出的一些帮助,且sm有返回值,供别的函数用。chuxs()开始时显示函数。Inputyear()输入年的函数,用了int型,变量有yy,yy有返回值。main()主函数,用了int型,变量有year,month,day,y,y0,y2,m,m0,m2,d,d2,a,用来计算,输出日历;long型,变量有sum1,sum2,j,用以计算两天之间相隔几天;int型,变量有inkeySCAN,inkey,用以输入键盘操作信息。三、程序清单及其说明/*本程序是在Win-TC上运行的*/#include"stdio.h"#include"conio.h"i

7、ntYear(intx){intleap;leap=(x%4==0&&x%100!=0)

8、

9、(x%400==0)?1:0;/*判断闰年*/returnleap;}voidWily(intx)/*输出是否为闰年*/{if(Year(x)==1)printf("%dis",x);elseprintf("%disnot",x);printf("aleapyear.");}intnumofMonth(inty,intm)/*一个月有几天*/{intday,t;t=28;if(m==1

10、

11、m==3

12、

13、m==5

14、

15、m==7

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。