C语言程序设计能力教程电子万年历设计.doc

上传人:wux****ua 文档编号:9290714 上传时间:2020-04-04 格式:DOC 页数:11 大小:828.50KB
返回 下载 相关 举报
C语言程序设计能力教程电子万年历设计.doc_第1页
第1页 / 共11页
C语言程序设计能力教程电子万年历设计.doc_第2页
第2页 / 共11页
C语言程序设计能力教程电子万年历设计.doc_第3页
第3页 / 共11页
点击查看更多>>
资源描述
电子科技大学成都学院电子工程系课程设计报告课 程 名 称: C语言程序设计能力教程 设 计 题 目: 万 年 历 指 导 教师组: 杨 剑 学 生 学 号: 1140810429 学 生 姓 名: 王 玲 琳 电子工程系制 2012年12月一、题目要求:用C语言编写一个万年历系统,具有公历和农历的日期显示,能显示年月日,星期几,具有记事本功能,在某个日期上可以输入纪念日,代办事项等。 1. 功能要求 (1) 基本要求试设计一个万年历系统,使之能提供以下基本功能:1) 能够模拟现实中日历的形式现实公历;2)第一行显示月份(中英文都可以)3)下一行显示星期,从周日到周六,中英文都可以4)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐6) 输入公历年月日能够显示农历日期;7) 信息输入功能:对某一天输入代办事项,纪念日等文字;8) 信息删除功能:能够删除某日期对应的纪念日等文字;(2) 创新要求达到上述基本要求后,可进行创新设计,如对功能扩展等。2、 需求分析根据题目设计要求及创新,我们设计了7个菜单选项。用户可以通过键盘输入17分别进入1:年历查询,2:月历查询3:日历查询,4:农历查询,5:记事本,6:定时关机工具,7:退出系统。 3、设计概要1. 进入系统时显示菜单界面及当前系统时间2. 年历查询:输入年代时,系统输出改年所有月份的日历并以日历的格式输出。3. 月历查询:输入年代,月份时,系统输出该月所有天数的日历并以日历的格式输出。4. 日历查询:当输入年,月,日时,系统输出该天的日历信息,包括星期,农历,节日。5. 农历查询:用户输入年、月、日。系统输出该天对应的农历信息,包括天干地支,农历。6. 记事本:当输入年、月、日时,系统首先查询该时间是否有记事,如果没有提示是否记事,若记事则用户输入记事内容,系统将该记事内容以文本文档的形式保存。若有记事则显示该记事,并提示是否删除,若用户选择删除,则系统将该时间对应的文本删除。若不删除,则退出系统。7. 定时关机工具:进入该功能,系统提示用户选择:1、关机、2:重启、3取消计划、4:退出。其中关机和重启具有定时功能。是否有记事8. 退出系统 输入指令 结束存储删除查看并退出输出日历信息是否添加是否删除农历查询日历查询月历查询是否有记事输入年月输入年月日输入指令输入年月日输入年月日退出定时关机记事本农历月历年历日历 开始输入年年历查询定时关机系统是否是是输入记事 4、 详细设计1. 基本函数设计1. 闰年的判断 2.每一个月天数的确定 3.该天是今年的哪一天 4今天是本周的第几天 5.星期的确定 6.输出一天的日历信息 7.格式化生成一个月的日历信息 8.输入参数的检查 9.年历查询10.节日查询 11.农历查询 12.日历显示 13.系统时间获取 14.定时关机工具2. 登录界面3.菜单功能的设计1. 年历查询:年历查询,需要显示这年每个月的日历信息并以日历的格式显示出来。首先则需要判断是否为闰年来确定本年的每个月的天数,然后算出每个月每一天为星期几并以日历的格式显示。2. 月历查询:月历查询需要显示改年这个月的日历信息,并以日历的格式输出3. 日历查询:用户输入年、月、日,系统根据输入信息调用基本函数,输出该天的基本日历信息。包括星期,天干地支,农历,节日。4. 农历查询:用户输入年、月、日,系统通过输入信息调用农历查询函数,输出该天的农历信息5. 记事本:用户输入年、月、日,系统根据输入信息自动查询该时间是否有记事。若没有,则提示用户是否进行记事。若记事则用户输入记事信息,系统对输入信息已文本文档的格式进行保存。若不记事则退出系统。若有记事,系统则直接输出该记事,并提示用户是否删除记事,若删除,则系统将该文本文档删除,否则退6. 定时关机工具:用户输入相应的指令,根据指令执行相应的操作。输入1,则系统提示用户输入定时关机时间。输入2,系统提示用户输入定时重启时间。输入3,系统取消定时关机或重启计划,输入4则退出系统7. 系统垃圾清理工具 用户通过菜单输入系统垃圾清理的指令,系统开始自动清理系统垃圾5. 源代码int Leap_year(int year);int Month_Day(int year,int month);int Year_Day(int year,int month,int day);int Week_Day1(int year,int month,int day);char *Week_Day2(int number);void Menu1(int year,int month,int day);void Menu2(int year,int month);int Menu3(int year,int month,int day);void Month_Display(int year,int month);void Lunar_Calendar(int year ,int month,int day);char *Festival(int month,int day);/char *Solar_terms(char Month,char Day);void Day_Display(int year,int month,int day);void Shutdown(void );void RTC(void);void Rubbish(void);/* 函数名:闰年判断* 入口参数:year* 返回参数:闰年返回1 否则返回0int Leap_year(int year)/*定义变量*/if(year%4=0&year%100!=0|year%400=0) /*利用函数判断输入年份是闰年还是平年*/return 1;elsereturn 0;/* 函数名:月份天数确定* 入口参数:year,month* 返回参数:今年该月的天数* 调用函数:int Leap_year(int year)int Month_Day(int year,int month)int a12=31,28,31,30,31,30,31,31,30,31,30,31;/*定义数组确定12个月每个月的天数*/if(Leap_year(year) /*如果输入年份是闰年*/a1=29;/*二月29天*/return amonth-1;/* 函数名:天数查询-查询该天是今年的第几天* 入口参数:year,month,day* 返回参数:该天是今年的第几天* 调用函数:day1(int year,int month)int Year_Day(int year,int month,int day)int i,sum=0;for(i=1;i查询该天是本周的第几天* 入口参数:year,month,day* 返回参数:返回该天是本周的第几天* 调用函数:day2(int year,int month,int day)int Week_Day1(int year,int month,int day)int number=(year-1)+(year-1)/4-(year-1)/100+(year-1)/400+Year_Day(year,month,day);number%=7;return number;/* 函数名:星期查询* 入口参数:number* 返回参数:星期char *Week_Day2(int number)switch(number)/*分类一周七天*/case 0:return 星期日;case 1:return 星期一;case 2:return 星期二;case 3:return 星期三;case 4:return 星期四;case 5:return 星期五;case 6:return 星期六;default:return 错误!请您重新输入。;/*不符和上面七种情况的报错提示*/6、实验中所遇到的问题及解决方法 在本次实验操作过程中,遇到一些语法的错误,结构上的错误,还有算法错误,但是根据读程序时的提醒,做了相应的修改,使得程序能够正常运行。7.感谢 非常感谢老师在这学期C语言上机中给予我们的指导和帮助,让我们从实践中更好地,更深刻的理解了这门学科,也掌握到了更多的知识和解决一些实际问题的方法。在一些很困难的问题上通过老师的帮助,避免了不少弯路。再次向老师的帮助表示衷心的感谢!电子科技大学成都学院20届课程设计成绩评定表学生姓名王玲琳学号1140810429专业通信工程 课程名称C语言程序设计能力教程 设计题目万年历 实验要求用C语言编写一个万年历系统,具有公历和农历的日期显示,能显示年月日,星期几,具有记事本功能,在某个日期上可以输入纪念日,代办事项等。对C语言在编写程序时的用处有了更明确的认识,懂得了编写C程序的一般方法步骤。分析问题做出算法,想好思路,在心里有个大致的框架,然后按部就班的写下自己想到的内容,把写下来的东西认真整理,查漏补缺,把一些细节处补上,这样就完成了一个程序。再者就是读程序,一句句的读,若输出的不是自己想要的结果应该要立即修改,直到这个程序接近完美。成绩考核(由指导教师组填写)对小组做整体评阅。(前四项为优、良、中及格不及格,总成绩为通过不同过)。如个别学生不通过,请在备注栏标明。考勤程序及运行结果设计报告PPT及答辩总成绩备注指导教师组签字: 完成时间 年 月 日
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!