C语言万年历课程设计报告书(共15页).docx
《C语言万年历课程设计报告书(共15页).docx》由会员分享,可在线阅读,更多相关《C语言万年历课程设计报告书(共15页).docx(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上C语言课程设计报告书万年历系统设计学院:理学院专业:信息与计算科学 姓名: 指导教师:序言 经过一个学期对C程序设计的学习,同学们都认为真正的学到了有用知识,可能有一些人学的不够理想,但无论如何,这些知识都为我们的下一步学习打下了坚实的基础。做这么一个课程设计,一方面是为了检查我们一个学期来我们学习的成果,另一方面也是为了让我们进一步的掌握和运用它,同时也让我们认清自己的不足之处和薄弱环节,加以弥补和加强。 本程序是一个万年历程序,可以查询1970年1月1日到2100年1月1日中任意一天是星期几,只要在运行程序时按照要求输入年,月,日,程序就会把这一天是星期几显示子啊
2、屏幕上;也可以输入一个年份和一个月份,程序就会把该月份的月历显示在屏幕上,使人一目了然。该程序能与目前天文学研究中所采用的各种日历程序所能计算的结果相一致。还有许多功能等着你去探讨。 这个程序花费了很多时间,用了一天的时间去设计程序和调试程序,而在调试程序的过程中,经常会出现一些不如意的地方,所以程序就要修改。所以这样经过一次又一次的修改之后,程序更显得人性化。通过这一次程序的设计,让我深深的感受到程序员的辛苦。 2012年6月11日 【课程设计题目:万年历系统】【要求】1:程序的功能多样;2:输入日期能够判断该日期是星期几;3:输入一个年份能够显示出该年的全部月历;4:输入一个年月能够显示该
3、月的月历;5:输入一个年份能够判断该年是闰年还是平年;6:能够退出。 进入程序【系统总体功能设计框架】 1:日期查询2:一年月历查询3:月历查询4:闰年判断5:退出1、输入年,月,日(1970,1-2100,1)2、输入年(0-5000)3、输入年,月(0,15000,12)4、输入年(0-5000)闰、平年该月月历12个月历星期*屏幕显示继续Y,yN退出程序【系统功能模块图】主要功能模块1:输入year,month,day计算month与当年的1月间隔了多少天rr=r+(year/4)*1461+(year%4)*365+dayr=r%7r=0r=1r=2r=3r=4r=5r=6SatSun
4、MonTueWedThuFirY或y返回菜单其他输入均退出程序代码:printf(please input the day you want(2100,1,1*,*,*1970,1,1):);scanf(%d,%d,%d,&year,&month,&day);for(b=0,r=0;b2006) days=(year-2006)*365+count_leap(year)+monthdays(month,year); weekday=days%7; else if(year2006) days=(2005-year)*365+count_leap(year)+monthdays(month,ye
5、ar); weekday=7-days%7; else days=monthdays(month,year);weekday=days%7; for (i=1;iweekday+2;i+) printf (t); for (i=1;i=y;i+) if (i+weekday-1)%7=0) printf (nt%3dt,i); else printf (%3dt,i); 主要功能模块3: 输入的年份 判断从定义年到输入的年份中每个年份是否为闰年是 否闰年每年为366天 平年每年为365天 返回该年的天数程序代码: int i; if (year%4=0&year%100!=0|year%400
6、=0) i=1; else i=0; return i;【用到的语句】1., /*头文件*/2.main() /*主函数*/3.printf(),4.scanf()5.a /*数组*/6.if 语句7.for 语句8.void /*要调用到的函数*/【源程序代码】#include#include int main() /主函数 int leap_year(int y); int count_leap(int year);int monthdays(int month,int year);void monthprint(int year,int month);int year,month,day
7、,b,r,number; /定义变量char choose;int a=0,31,28,31,30,31,30,31,31,30,31,30,31;printf(*mainMeun*n);printf( 1:ri qixing qi ji.n);printf( 2:yue li.n);printf( 3:ri li.n);printf( 4:run nian pan duan. n);printf( 5:exitn);printf(n);printf(*n);printf ( please input the number:);scanf(%d,&number);if(number=1)pri
8、ntf(please input the day you want(2100,1,1*,*,*1970,1,1):); scanf(%d,%d,%d,&year,&month,&day); /输入要查询的日期for(b=0,r=0;b*0):); scanf(%d,&year); /输入要查询的年份 for(month=1;month*,*1970,1):); scanf(%d,%d,&year,&month); /输入要查询的年,月 printf( %dyear %dmonthn,year,month); printf(*n); printf( Sun Mon Tue Wen Thu Fri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 万年历 课程设计 报告书 15
限制150内