《万年历设计报告.docx》由会员分享,可在线阅读,更多相关《万年历设计报告.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、万年历设计报告 万年历设计报告 C语言程序设计实训任务书 题目:万年历 学生姓名:学号:班级:_物联网工程_ 题目类型:软件工程(R)指导教师: 一、设计目的 1.进一步掌握和利用C语言进行程序设计的能力; 2.进一步理解和运用结构化程序设计的思想和方法; 3.初步掌握开发一个小型实用系统的基本方法; 4.学会调试一个较长程序的基本方法; 5.学会利用流程图或N-S图表示算法; 6.掌握书写实训开发文档的能力(书写实训报告)。 二、设计任务及内容 用C语言编写万年历 1.功能选择可以用菜单实现。 例如可以选择1按年查询2按月查询3按日查询0退出 用户通过不同的数字进入不同的菜单 2.万年历显示
2、公元后任何年份的日历,类似于一般挂历上的格式 3.输入年份,判断是否为闰年 4.输入年月日,判断改日为星期几 5.输入年份,打出12个月历,输入月份,打出该月的日历 6.要求用多个函数实现 三、设计要求 1.用C语言实现系统; 2.利用结构体、数组等实现数据结构设计; 日期内容地点星期一教师讲解设计要求,准备参考资料1B203 星期二分析系统,方案设计1B203 星期三方案设计,编程1B203 星期四调试程序,书写实训说明书1B203 星期五完成实训说明书,答辩1B203 摘要 C语言在近年来国内外得到了很广泛的推广,而电子万年历也是人们在日常的生活需求中必不缺少的一部分。我们通过这学期对C语
3、言的学习,做出了一个万年历程序。该程序实现了简易的万年历的功能,实现了万年历的四个基本功能。当进入此程序,通过界面的提示可以很容易的进入万年历功能选择所实现的功能。此万年历有以下四个常能用的功能:按年查询、按月查询、按日查询、打印整年日历。这四个常用功能基本满足了人们在生活中的对万年的需求,本万年历跨度较其他万年历稍大一些,可以查询到更广的年历。 关键词: C语言;电子万年历;数组 目录 1绪论 (1) 1.1设计目的 (1) 1.2设计背景 (1) 1.3需求背景 (1) 1.4小组分工 (8) 2总体设计 (3) 2.1总模块设计 (3) 2.2使用头文件说明 (3) 2.3使用变量声明
4、(4) 2.4运用到C语言的函数 (4) 2.5函数调用关系 (5) 3详细设计 (6) 3.1函数运行流程图 (6) 3.2闰年判断模块 (7) 3.3年历打印模块 (8) 3.4星期计算模块 (9) 3.5打印月历模块 (11) 3.6日期合法性检查模块 (13) 4 调试分析 (14) 4.1错误分析 (14) 4.2错误修改 (14) 4.3运行程序 (15) 4.4闰年的判断 (15) 4.5 星期计算的功能 (16) 4.6月历查询功能 (17) 4.7打印整年年历功能 (18) 5 源程序清单 (19) 总结 (26) 致谢 (27) 参考文献 (36) 1绪论 本课题主要是针对
5、简易电子万年历的功能,以及子模块的设计展开探究。课题主要包括了使用C语言来调用各个模块的函数,使这些函数相互之间联系起来,解决用户需要的简易问题,同时考察组员对C语言中的函数、顺序、循环、if语句的嵌套、for语句的嵌套的操作能力。并且在探究的过程中培养组员分析问题和解决问题的能力,提高组员之间团结合作的能力。 1.1设计目的 1.通过实训可以综合运用所学有关相应知识的能力,能更好的巩固C语言程序设计课程学习的内容,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关。更加了解了C语言的好处和其可用性。同时增加了同学之间的团队合作精神,更加也体会到以后在工作中团队合作的
6、重要性和必要性。 2.通过实训,使学生了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。 1.2设计背景 C语言是近年在国内外得到迅速推广应用的一种机器语言。C语言功能丰富,表达能力强,应用灵活方便,应用范围广,目标成序效率高,可移植,极有高级语言的优点,又具有低级语言的许多特点。因此,C语言特别适合于编写各种软件。在这次的实训中我将把日常生活中最经常接触的日历的查询,利用C语言的程序编成一个简单的万年历查询系统。通过这个小小的系统可以实现部分功能。在程序中你能
7、看到很多熟悉的C语言关键字,同时也加入了很多自己课外了解到的一些关键字。 1.3需求背景 目前比较流行电子万年历程序,比较典型的是windows中各版本的日历程序。但是这些程序总是有一定的限制,需要一个跨度很大的日历来方便人们的生活,而C 语言程序与设计充分发挥了这个优点,用很短的文本填补了这一个空白。同时也用强有力的证据告诉人们C语言这个新生事物的应用范围是极其广阔的。 1.4小组分工 组内成员是一个整体,小组是一个团队,强调集体行动,不搞个 人主义,组内对于各种任务要有明确分工,并且要明确落实到人。 组长:白博康在以身作则的基础上,对组员的学习、行为、思想等进行监督、督促和指导。包括随时与
8、指导老师联系,分派组员任务。同时负责实训内容的收尾、排版、制图、检查错误、部分程序的调试等工作。 组员:蔡家豪在报告书中做了很大的贡献,在我们的报告书中担任了流程图制作,资料搜集的工作,为我们的工作顺利进行起到了很大的作用。同时为组内同学做好了后勤保障工作。 组员:程虞华在我们组中寻找源代码以及对源代码进行改进,为我们提供了程序设计的基础,并和其他组员一起查询错误。在报告书中为我们编辑了详细程序这一部分。同时协助其他组员进行实训中表格的制作,流程图的制作。 2总体设计 2.1总模块设计 用户通过不同的数字进入不同的菜单,万年历显示公元后任何年份的日历,类似于一般挂历上的格式,输入年份,判断是否
9、为闰年;输入年月日,判断为星期几;输入年份,打印出查询月历;输入年份,打出该月的日历。 图2.1 功能模块图 2.2使用头文件说明 本程序应用到的头文件: #include stdio.h 在使用标准函数库中的输入输出函数时,编译系统要求程序提供有关的信息(例如对这些输入输出函数的声明),#include的作用就是用来提供这些信息的,stdio.h 是C 编译系统提供的一个文件名,stdio 是“standard input & output”的缩写,即有关标准输入输出的信息。 在程序中用到系统提供的标准函数库中的输入输出函数时,应在程序的开头写上一行:#includestdio.h或者是#i
10、nclude,这样才能调用库函数。二者主要 万年历 闰年判断 星期查询 月历查询 打印整年日历 在于查找效率上有差别,#include一般用包含系统文件,它是查找先从系统目录查找开始查找;#include stdio.h一般用包含项目文件,它是查找先从项目目录查找开始查找。 在编写C语言中,常用到printf()和scanf()函数,他们就是stdio.h中的两个标准输入输出函数,所以编程语句中如果要用到此两个函数就一定要在头文件中加入#include。 #include windows.h 头文件封装了库函数以及一些类,将一些复杂的工作由库函数处理,而用户不必把精力放在这些地方。比如说cout 表示菜单选择的变量 x 表示月份的变量 y 表示一个月中的某一天的变量 sum 判断某天是一年中的第几天的变量 number 判断某天离公元1年1月1日还有几天的变 量 a 表示每月天数的数组变量 2.4运用到C语言的函数