JAVA《万年历系统》课程设计报告附源码
学号
2013-2014学年 第二学期
《面向对象程序设计》 课程设计报告
题目: 万年历系统 专业: 计算机科学与技术 班级: 姓名: 学号: 指导教师: 成绩:
计算机与信息工程系
2014年6月6日
目录
1 设计内容及要求................................................... 1
1.1设计内容..................................................... 1 1.2设计任务及具体要求........................................... 1 2 概要设计......................................................... 2
2.1程序设计思路................................................. 2 2.2 总体程序框图 ................................................ 3 3 设计过程或程序代码............................................... 4
3.1各个模块的程序流程图及运行界面............................... 4 3.2对关键代码加以分析说明....................................... 7 4 设计结果与分析.................................................. 13
4.1程序调试的结果.............................................. 13 4.2程序设计分析................................................ 13 5 小 结........................................................... 14 致谢............................................................... 15 参考文献........................................................... 16 源程序............................................................. 17
计算机与信息工程系 《面向对象程序设计》课程设计报告
1 设计内容及要求
1.1设计内容
万年历,实际上就是记录一定时间范围内(比如100年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用。在我设计的万年历中主要有:
(1)使用图形用户界面来查询用用户所需的日期信息,符合日常软件使用规范。
(2)按月份查询,实现了显示查询1901~2100年某月所有日期的阴阳历对照。
(3)并且添加了重大节日与星座等信息,界面采用日常的星期与月份结合的格式,方便查看与使用。
(4)编写万年历的课程设计,是为了使同学们更加了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。
1.2设计任务及具体要求
利用JAVA语言编写的万年历系统采用了多种JAVA语句来实现多种功能。用户可以通过本程序的applet运行界面来查找一整年某月的农历和阳历,可以查找用户所想了解的某一天具体为星期几,并且可以看到一些重大节日的具体时间。
要求:满足设计万年历系统的目的,即当用户查询年份与月份时,系统就要将这一年的某一月份的阴历与阳历全部显示出来,并且附带这一月份的重大节日。当用户随意改动年份或月份时系统自动显示与星期对应的日期。用户点击日期时系统会显示具体星座信息。
1
计算机与信息工程系 《面向对象程序设计》课程设计报告
2 概要设计
2.1程序设计思路
(1)总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。
(2)输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。
(3)算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。
(4)如果年份小于1900年则程序不予判断。
(5)公历与农历的换算。公历年对应的农历数据,每年三字节,格式第一字节BIT7-4 位 表示闰月月份,值为0 为无闰月,算法:日期+年份+所过闰年数+月较正数之和除7 的余数就是星期但如果是在闰年又不到3 月份上述之和要减一天再除7星期数为0。阴历月份计算:4\\6\\9\\11几个小月返回29天, 2月经过判断是否为闰年,选择返回28或29天,其余月份为大月,返回31天。
(6)系统时间的设置。直接从系统得到时间,设置字体,背景,显示框架等等,绘图就好了。
2
计算机与信息工程系 《面向对象程序设计》课程设计报告
2.2 总体程序框图
开始 程序初始化 获取当年系统时间和年份 计算与绘制屏幕 是否输入年份或选择月份
提交年月变更数据
结束
图1 总体程序框图
3
计算机与信息工程系 《面向对象程序设计》课程设计报告
5 小 结
在这次课程设计中,主要是运用Java语言来编写,并可运用其他的技术。在我的系统中,还采用了Swing控件、输入输出流等技术,而这些知识都是我们没有学过的,这就要求我们去查阅相关书籍。正因为这样,才锻炼了我的自学能力,为以后的学习打下了基础。此外,我还深刻感受到了面向对象语言中类库的强大功能,掌握了运用Java中的类实现某些基本功能,并学会了自己查询使用类的方法,为以后的面向对象语言的自学奠定了基础。
万年历系统程序的设计成功会让快节奏的社会上的感到方便,因为现在的社会离不开时间。他们只需要呆在家里就可以清楚的知道某一天的日期。并且对人们的工作也有所帮助,方便他们查询某年某月的资料以及制作报表。因此,我认为万年历在今后的发展空间很大,如果包装成简易软件会有很高的利用价值,我们可以随时随地查阅。
14
计算机与信息工程系 《面向对象程序设计》课程设计报告
致谢
在这次JAVA高级语言课程设计中,我的老师和同学给了我及大的帮助。特别是我的指导老师兼授课教师陈磊老师,在此,我对他们表示感谢。感谢他们在我面对困难时给了我帮助和支持,,也感谢那些给我帮助的所有同学。
15
计算机与信息工程系 《面向对象程序设计》课程设计报告
参考文献
[1] 牛晓太.Java程序设计教程[M],北京:清华大学出版社,2013.
[2] 朱福喜,傅建明.JAVA项目设计与开发范例[M],北京:电子工业出版社,2005.
[3] 刘宝林.JAVA程序设计与案例[M].北京:高等教育出版社,2006. [4] 刘亚峰,纪超.JavaSE6.编程指南[M].北京:人民邮电出版社,2007.11 [5] Walter Sav …… 此处隐藏:5153字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [建筑文档]2018年公需课:专业技术人员创新能力与
- [建筑文档]2013年福建教师招考小学数学历年真题
- [建筑文档]高中信息技术课flash知识点总结 - 图文
- [建筑文档]电工实训 - 图文
- [建筑文档]最高院公告案例分析100篇(民商篇)
- [建筑文档]南开中学高2017级14-15学年(上)期末
- [建筑文档]五粮液集团战略分析
- [建筑文档]鲁教版(2012秋季版)九年级化学 酸碱
- [建筑文档]超星尔雅2017中国哲学概论自整理题库答
- [建筑文档]关于成为海口金盘饮料公司材料独家供货
- [建筑文档]LNG学习资料第一册 基础知识 - 图文
- [建筑文档]四年级品社下册《好大一个家》复习资料
- [建筑文档]现阶段领导权力腐败的特点及发展趋势
- [建筑文档]魏晋南北朝诗歌鉴赏—嵇康
- [建筑文档]坚持追求真爱是理智的行为 正方一辩稿
- [建筑文档]湘西州刑释解教人员帮教安置工作存在的
- [建筑文档]园林工程试题库及答案
- [建筑文档]计算机长期没有向WSUS报告状态
- [建筑文档]日语最新流行语
- [建筑文档]B62-016 景观进场交底专题会议
- 2018年中考语文课内外古诗词鉴赏专题复
- 高考试题研究心得体会
- C语言基础题及答案
- 电气控制及PLC习题及答案
- 都昌小学家长学校汇报材料
- GMAT作文模板正确使用方法
- 俄军办坦克大赛:中国99式有望与豹2A6
- 成本会计练习题
- 酒店餐饮业最流行的5S管理方法
- 2014-2015学年山东省菏泽市高二(下)
- 《黄鹤楼送孟浩然之广陵》教案、说课、
- 2013年结构化学自测题 有答案版
- 2011西安世界园艺博览会游览解说词(附
- 窗口文明单位示范单位创建活动总结
- 2018满分超星尔雅就业课后练习期末答案
- 韶山市城市总体规划-基础资料
- 苏教版第三单元知识点归纳
- 第4章 曲轴模态分析
- 加大查办案件力度的思考
- 武汉CPC导轨介绍




