已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8C语言课程设计课程设计报告题 目学 号姓 名年级专业指导教师完成日期年月日安徽师范大学物理与电子信息学院College of Physics and Electronic Information, Anhui Normal University一、 问题描述1) 日期按星期排列2) 日历查询,输入日期进行查询。3) 闰年判断功能显示查询日期所在月份的月历,还将显示所在年份是否为闰年。二、 问题分析对于要求1:根据蔡勒公式,可以很容易地有年月日推断出星期:rst=yr-1+(int)(yr-1)/4)-(int)(yr-1)/100)+(int)(yr-1)/400)+ds; wkd=rst%7;4) 对于要求2: 在打印月历时,只要知道第一天的星期,就可以依次输入后面的日期,通过定长度输出日期,在遇到某天时星期六时,就换行输出,因此可以按照月历的格式输出。5)对于要求3:闰年的判断,能被4整除但不能被100整除,或者能被400整除的年份为闰年,否则为平年。日期的查询,就是直接打印改天所在月份的月历。三、 小组成员:四、 总体设计功能模块月历显示日期查询闰年判断排列星期输入日期流程图进入程序输入年月判断闰年按星期排列输出月历五、 详细设计主要函数:int runYear(int year);该函数判断某年是否是闰年,参数year表示要判断的年份,返回值1表示该年为闰年,0表示该年为平年。intCalWkd(intyr,intmth)该函数确定每月的天数,闰年二月为29天。showcld(intwkd,intmtd)该函数用以根据一个日期推断星期,参数为要判断的年月日。返回值为整型,123456分别表示星期一到星期六,0表示星期天。六、 程序清单#include int JgYr(int yr) if (yr%4=0&yr%100!=0yr%100=0&yr%400=0) return 1; else return 0; int CalWkd(int yr,int mth) int ds=0,i,rst,wkd; int mthd13=0,31,28,31,30,31,30,31,31,30,31,30,31; if (JgYr(yr) mthd2=29; for (i=1;imth;i+) ds+=mthdi; ds+=1; rst=yr-1+(int)(yr-1)/4)-(int)(yr-1)/100)+(int)(yr-1)/400)+ds; wkd=rst%7; return wkd; showcld(int wkd,int mtd) int dt=1,i,j=0; printf(SuntMontTuetWedtThutFritSatn); for (i=0;iwkd;i+) printf(t); j+; while (j!=7) printf(%d,dt); if (j6) printf(t); else printf(n); dt+; j+; while (1) for (j=0;j7;j+) printf(%d,dt); if (j!=6) printf(t); else printf(n); if (dt!=mtd) dt+; else return 0; int main() int yr,mth,mtd,wkd,mthd13=0,31,28,31,30,31,30,31,31,30,31,30,31; printf(Input the Year and Month(Year-Month):); scanf(%d-%d,&yr,&mth); if (yr0mth12) return 0; if (JgYr(yr) mthd2=29; mtd=mthdmth; wkd=CalWkd(yr,mth); showcld(wkd,mtd); return 0; 七、 测试数据八、 心得体会经过两周的奋战,终于达到了预定的效果,完成了该信息系统的设计和编写。此程序是一个功能比较完整的能实现一定的实际功能的程序,代码比较短,不到100行,实现的功能有显示当前日历,闰年的判断,按星期显示。然后在程序编写过程中,遇到了问题,比如在输入年月格式不正确的情况下,有时会出现程序崩溃。到写报告为止,漏洞基本被找出,并得到修正。通过写这个程序,我对C语言有了更深的认识,C语言是一门较为实用的计算机语言。在本次课程设计中,要感谢老师的指导,也要感谢提供意见和建议的同学,才得以大致完成该设计。通过本次设计我也明白了团队合作的重要,也体会到了编程的乐趣。再次感谢老师的指导!九、 参考文献l 谭浩强,c语言设计教程,清华大学出版社,2007年l 赵永哲,李雄飞,戴秀英编著,c语言设计程序,科学出版社,2003年l 夏宽理,赵志正编著,c语言程序设计,中国铁道出版社,2006年l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 道路危化品运输车辆安全管控方案
- 医院智慧病房系统施工方案
- 采煤机维护工安全操作规程
- 布加综合征抗凝出血风险定期监测标准共识
- P2P测试用例面试真题及详细答案(实操版)
- 皮肌炎运动时机个体化评估共识
- 心电监护技术操作理论考试试题及答案
- 疲劳驾驶预警及安全干预方案
- 椎管内肿瘤诊疗专家共识(2025版)
- 2026年甘肃事业单位招聘考试(护林员)历年参考题库含答案
- 2026-2027学年四年级上册语文第三单元综合测试卷(含答案)
- 2026年上海市中考综合测试(物理、化学)试卷(含答案解析)
- 【一年级】【秋季上】【语文】开学家长会:“语”你相遇 共赴新程【课件】
- 汽车类单招考试试卷及答案展示
- 建设工程造价咨询规范
- 《金属材料室温拉伸》课件
- 红十字运动基本知识普及课件
- CN115571819B 大型回转窑筒体安装方法及组装辅助装置 (中国二十冶集团有限公司)
- DB11-T《消防通信指挥系统应用规范》
- 2026年交通银行行测笔试题库
- 数智化物流:供应链协同新范式
评论
0/150
提交评论