- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XXXXXXXX
电子工程系
C语言
课程设计报告
题目名称: 年历显示设计
学生姓名: XXXXXX
学 号: XXXXXXXXXXXXX
专 业: 电子信息工程
同组成员: XXXXXXXXXXX
2013年12月制成绩:
一、设计题目:题目五,年历显示设计
二、设计任务及自己所承担部分
设计任务:
(1)输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年份在1950-2050年之间。
(2)输入年月,输出该月的日历。
(3)输入年月日,输出距今天还有多少天,星期几,是否是公历节日。
自己所承担部分:程序的测试以及运行
三、总体设计(程序设计组成框图、流程图)
程序组成框图:
年历显示设计
年历显示设计
输出年日历输
输
出
年
日
历
输
出
月
日
历
输出详细信息
输出详细信息
流程图:
开始
开始
点击进入功能选项
点击进入功能选项
查询月日历查询
查
询
月
日
历
查
询
详
细
信
息
查
询
年
日
历
输出详细信息输出月日历输出年日
输出详细信息
输出月日历
输出年日历
显示结果
显示结果
是否继续
是否继续
四、详细设计(模块功能说明,如函数功能、入口及出口参数说明,函数调用关系描述等)
当我们输入年份任意公元后的年份year时,可以通过一个for语句,算出从公元一年到year-1年的总天数,这其中要注意平年与闰年的区别,平年365天,闰年是366天,把这一部分用how()函数表示。算出总天数Z后,用Z除以7余数是d,则year这一年的一月一日便是星期d。如此则一月的日历可表示出来。然后把Z加上一月的天数tian得到的新值赋给Z,再用Z除以7,重新得到新的余数d,如此可知二月的第一天是星期几,可表示出二月的日历。依次循环,用for(i=0;i12;i++)语句可表示出该年的日历。注意闰年二月是29天,平年是28天。
模块功能说明:
大体框架:对于所给出的万年历要满足三个功能即查询某一年的年历表,某一年单月的月历,某一年某一月某一日具体的信息包含星期几,是否有公历节日,距离当前时间所差的天数三个小的功能。
功能A:查询某一年的年历表。主题思想将一年每个月的天数存放在一个数组中以方便调用,其次年历要判断所查询的年份是否为闰年或者是平年由条件if((y%4==0y%100!=0)||y%400==0)来确定,如果是闰年则二月份输出29天此由条件语句给出。对于年里中的星期几由公历算法
判断某一年的第一天也就是元旦为星期几,利用循环语句依次累加排列出该月的月历,满足条件(j*10+k)=(10+w)就累加否则=输出空格。
功能B:查询某一年某一月的月历,和上面一样需要判断是否为闰年,不同之处是星期数由w=(y-1+(y-1)/4-(y-1)/100+(y-1)/400+s+1)%7给出。
功能C:查询某一年某一月某一天的具体信息。利用s来计算出当前与你所要查询某一天所想差的天数,具体思想为:两个都利用了for循环语句,循环起点同为0,也就是他们开始记年的时间相同,先计算整年之间所相差的天数y1并判断循环之间的年份是否为闰年,如果是加366否则加365.然后判断月份的天数,也是利用for循环通过调用数组中的满足条件的元素累加月分所经过的天数m1.则sum1=y1+m1+d1.和上面一样计算所要查询的天数总和sum=y+m,s=sum1-sum,判断这一天的星期数由公式w=(y-1+(y-1)/4-(y-1)/100+(y-1)/400+s)%7判断。公历信息应提前输入一个公历信息库,利用条件语句判断如果满足输出该节日。
要解决的主要问题为:
(1) 找到日期和星期几之间的对应关系。
(2) 闰年的判断可以构造一个函数来实现:int IsLeapYear( int year );每月对应的天数可以利用一个一维数组month_day[]来存储;为显示一年当中的各个月份可用switch-case分支结构。
五、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施
测试方法:运用c++语言程序运行。具体步骤:编译,组建,执行
测试遇到的问题:
(1)函数的调用与套用,具体来说就是如何在一个构造的函数中调用另一个构造函数。
(2)把每月的日历设计的美观,如何让星期和下面的数字对齐。
(3)如何把握日历的前几天的空格,使每月的第一天正好对在它应该的星期下。
测试结果:刚开始未能出来正确结果,有很多错误,但是我们根据c语言程序中的提示一步步的解决,找到问题出来的地方,再不行的地方大家一起讨论,实在不行的我们就上网查资料,仿照别人的
您可能关注的文档
- 六足爬虫机器人设计.doc
- 龙洞商铺的估价报告.doc
- 聋七社会上教案.doc
- 楼板钢筋面积表.doc
- 楼宇自控系统监控点表.doc
- 颅内血肿碎吸术.ppt
- 鲁迅:深刻与伟大的另一面是平和学案.doc
- 录井储层评价讲座二.doc
- 录音笔的设计与制作.doc
- 路由器和二级交换机的本质区别.ppt
- 2025年AI大模型技术在电力系统中的应用及发展趋势报告-香港中文大学(赵俊华).docx
- 2025年温室气体核查指南-企业可持续发展的绿色基石-ICAS英格尔认证.docx
- 数字员工助力财务管理数字化转型.docx
- DeepSeek完全实用手册(1.5版本).pdf.docx
- 2025年一季度中国消费者消费意愿调查报告-立信数据-202506.docx
- 突发环境污染事件应急管理培训.docx
- 金融-银行行业专题:中国机构配置手册(2025版)之流动性与货币政策篇-“超级央行”时代.docx
- 陈立桅-高比能长循环全固态电池关键材料.docx
- 投资策略专题:从“第四消费时代”看未来消费机遇.docx
- 华为产品战略规划全景训战.docx
最近下载
- 学堂在线e时代的教与学—慕课引发的混合式教学1-5周作业答案+考试答案.docx VIP
- pep人教版四年级英语下册期末考试卷(可打印).pdf VIP
- 2023年副高(临床药学)考试真题卷.pdf VIP
- 私人订制旅行行程安排及免责.doc VIP
- 沪教版四年级下册英语期末测试卷附参考答案.pdf VIP
- 中泰化学2024环境、社会及治理(ESG)报告.docx
- 标准图集-西南18J515_室内装修.pdf VIP
- 《数据分析基础与案例实战(基于Excel软件)(第2版)》全套教学课件.pptx
- 人教版三年级英语下册期末测试卷及答案【完美版】.pdf VIP
- 基于PLC的变频器多段速调速系统设计.doc VIP
文档评论(0)