c语言课程设计之万年历

上传人:第*** 文档编号:56882867 上传时间:2018-10-16 格式:DOC 页数:19 大小:232.50KB
返回 下载 相关 举报
c语言课程设计之万年历_第1页
第1页 / 共19页
c语言课程设计之万年历_第2页
第2页 / 共19页
c语言课程设计之万年历_第3页
第3页 / 共19页
c语言课程设计之万年历_第4页
第4页 / 共19页
c语言课程设计之万年历_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《c语言课程设计之万年历》由会员分享,可在线阅读,更多相关《c语言课程设计之万年历(19页珍藏版)》请在金锄头文库上搜索。

1、1程序设计基础程序设计基础 课程设计报告课程设计报告题题 目目 万年历系统设计万年历系统设计 专业班级专业班级 学学 号号 姓姓 名名 指导老师指导老师 完成时间完成时间 2目 录1 设计要求32 系统设计32.1 设计思路.32.2 系统功能模块.32.3 系统流程图.42.4 算法设计与描述.53 关键程序代码74 程序运行结果165 总结19参考文献1931 1 设计要求设计要求1)分析问题并确定解决方案;2)确定算法流程,进行功能模块的代码设计;3)调试程序,实现系统功能;4)完成课程设计报告。 2 系统设计系统设计2.1 设计思路设计思路先从系统调用时间,判断是否是闰年(y%4=0i

2、nt JudgeLeapYear(int);/判断闰年int MonthDay(int m,int y);/计算所输入月份有多少天int FirstWeek(int m,int y);/计算该月第一周有几天void printHeader(void);/打印标题void printMonth(int m);/打印月份int main1()/输出函数int year,month,i,test,week; printf(“输入所查询的年份:n“);scanf(“%d“,/system(“cls“);for (month=1; month999999) printf (“ERROR!请重新输入!“)

3、; while (year999999); printf (“nn“); do printf (“请输入所查询月份(112)nn“); scanf (“%d“, if (month12) printf (“ERROR!请重新输入!“); while (month12); 12printf (“nnn“); printf(“tttt%ldt%dnn“,year,month); printf(“n*n“); printf(“tt Sunt Mont Tuet Went Thut Frit Satn“); monthprint(year,month); printf(“nn“); choose=ge

4、tchar(); printf(“是否继续本功能?(是 y/否 n):nn“); scanf(“%c“, if (choose=y|choose=Y) /main();main3(); int leap_year(int y) /判断闰年,返回 1,0 int i; if (y%4=0 else i=0; return i; int count_leap(long year) int i=0,j,min,max; if(year2006) min=2006;max=year; else min=year+1;max=2006;13 for(j=min;j=2006) static int t1

5、2=31,0,31,30,31,30,31,31,30,31,30,31;/*112 月的每月天数*/ j=month-1; if(leap_year(year) t1=29; else t1=28; for(i=0;i2006) days=(year-2006)*365+count_leap(year)+monthdays(month,year); weekday=days%7; else if(year void main() int i;loop:printf(“ *n“);printf(“ * * * *n“); printf(“ * * * *n“);printf(“ * * * *

6、 *n“);printf(“ * * * * * *n“);printf(“ * * * * * *n“); printf(“ * * * * * *n“);printf(“ * * * Permanent * * *n“);printf(“ * * * Calendar * * *n“);printf(“ * * * * * *n“);printf(“ * * * 1)查询某年的年历 * * *n“);printf(“ * * 2)查询某月的日历 * *n“);printf(“ * * * 3)查询某日为周几 * * *n“);printf(“ * * * 4)退出 * * *n“);pri

7、ntf(“ * * * * * *n“);printf(“ * * * * * *n“);printf(“ * * * * * *n“);printf(“ * * * * * *n“);printf(“ * * * * * *n“);printf(“ * * * * *n“);printf(“ * * * *n“);printf(“ * * * *n“);printf(“ *n“);printf(“请选择功能序号:“);scanf(“%d“,system(“cls“);16switch (i)case 1:main1(); goto loop;case 2: main3();goto loop

8、;case 3: main2();goto loop;case 4: break; 4 程序运行结果程序运行结果打开程序万年历.exe 选择功能 1 17随机输入一个年份 (例:1995)显示出该年年历如下:选择功能 2根据提示输入年份月份(例 2014 年 6 月)18选择 n 进行下一个功能:选择功能 3根据提示输入年月日(例:2014 年 6 月 24 日)选择 1 停留本功能 选择 2 返回主界面195 总结总结本次课程设计让我对 C 语言的学习又有了更深入的了解,也让我更深刻地领悟到了“实践出真理”这个道理,在上机实践过程中学到的知识远远超过了在课堂上十几周学到的,在这个程序中,主要

9、应用了这学期所学习的循环,条件语句,数组与调用函数。这些知识的应用使我对课本内容的认识得到了加深。在编写程序的过程中,也出现了很多错误。比如程序语句错误导致检测时连续报错;函数语句编写错误导致输出结果与实际不相符合等。出现这些情况后,通过对一些新知识的学习和对网上相关资料的阅读,我发现了自己程序的问题所在并进行了改正。最后的到正确的结果。并且让我们这些实践知识匮乏的大学生增添了许多社会经验,为我们将来走上工作岗位起到不小的铺垫作用。本次实践中遇到了很多以前没有遇到过的问题,也曾想过要放弃,但看到那些同学都在那认真的写程序,给了我继续的信心。在同学的帮助下,我顺利的结束了本次实习,让我知道原来凭借自己努力取得的成功会让自己这么欣慰,也让我知道了友谊和团结的重要性。参考文献参考文献1.C 语言程序设计 王曙燕 曹锰 科学出版社 2005 年 2 月2.C 语言程序设计第三版 谭浩强 清华大学出版社 2005 年 7 月3.C Primer Plus中文版第五版 人民邮电出版社 2005 年 2 月

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号