日期计算器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序设计与算法课程设计
课程设计评语
对课程设计的评语:
平时成绩:课程设计成绩:
总成绩:评阅人签名:
注:1、无评阅人签名成绩无效;
2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;
3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。
目录
课程设计评语 (2)
目录 (3)
1.课程论文题目.............................................................................................. 错误!未定义书签。
2.程序设计思路.. (4)
3.功能模块图 (4)
4.数据结构设计 (5)
5.算法设计 (5)
6.程序代码 (6)
7.程序运行结果 (7)
8.编程中遇到的困难及解决方法.................................................................. 错误!未定义书签。
9.总结及建议.................................................................................................. 错误!未定义书签。
10.致谢. (8)
1.课程设计题目:日期计算器
【要求】
功能:计算输入日期是当年中的第几天
系统要求实现以下功能:
1. 由用户分别输入:年、月、日
2. 计算该日期是当年中的第几天
3. 输出计算出的天数
分步实施:
1、首先设计Dater对象构造器
2、判断此年是否为闰年。
3、计算从此年年初到此日的一共多少天
4、输入输出处理。
【提示】
需求分析:使用Dater对象构造器,用1判断为闰年,,0判断为不是闰年,使用累加的方法计算年初到此日共有多少天,进行输入输出处理.
(1)主函数设计
主函数提供输入,处理,输出部分的函数调用。
(2)功能模块设计
模块:由用户自己录入年,月,日,、。
计算该日期为一年的中德第几天。
输出计算出的天数,返回主菜单。
3. 功能模块图
(1)输入模块
由用户分别输入:年、月、日
由用户分别输入:年、月、日
计算该日期是当年中的第几天
出
计
算
出
的
返回主菜单
4.数据结构设计
此程序中用到了
(1)基本类型:1) 整型(int),
(2)构造类型: 2)结构体类型:struct equip
{
Int getyear()
Int getmonth()
Int getday()
Int getmonth1()
}equ[N],temp;
(3)指针类型:FILE *fp,文件型指针变量,fp是一个指向FLIE类型结构
的指针变量。
5. 算法设计
6. 程序代码
import java.util.Scanner;
public class ggggg {
public static void main(String[] args) {
int d;
Scanner reader=new Scanner(System.in);
System.out.println("请输入年份");
int year=reader.nextInt();
System.out.println("请输入月份");
int month=reader.nextInt();
System.out.println("请输入日期");
int data=reader.nextInt();
int
a0=0,a1=31,a2=28,b2=29,a3=31,a4=30,a5=31,a6=30,a7=31,a8=31,a9=30,a10=31,a11=30; if(year%4==0)
{ System.out.println("该年是闰年");
switch (month)
{ 日期计算器管理系统
用户年的输入
用户月的输入
用户日的输入 是否为闰年 共多少天
case 1: d=a0+data;break;
case 2: d=a1+data;break;
case 3: d=a1+b2+data;break;
case 4: d=a1+b2+a3+data;break;
case 5: d=a1+b2+a3+a4+data;break;
case 6: d=a1+b2+a3+a4+a5+data;break;
case 7: d=a1+b2+a3+a4+a5+a6+data;break;
case 8: d=a1+b2+a3+a4+a5+a6+a7+data;break;
case 9: d=a1+b2+a3+a4+a5+a6+a7+a8+data;break;
case 10: d=a1+b2+a3+a4+a5+a6+a7+a8+a9+data;break;
case 11: d=a1+b2+a3+a4+a5+a6+a7+a8+a9+a10+data;break;
default : d=a1+b2+a3+a4+a5+a6+a7+a8+a9+a10+a11+data;break;
}
}
else
System.out.println("该年不是闰年");
{switch (month)
{
case 1: d=a0+data;break;
case 2: d=a1+data;break;
case 3: d=a1+a2+data;break;
case 4: d=a1+a2+a3+data;break;
case 5: d=a1+a2+a3+a4+data;break;
case 6: d=a1+a2+a3+a4+a5+data;break;
case 7: d=a1+a2+a3+a4+a5+a6+data;break;
case 8: d=a1+a2+a3+a4+a5+a6+a7+data;break;
case 9: d=a1+a2+a3+a4+a5+a6+a7+a8+data;break;
case 10: d=a1+a2+a3+a4+a5+a6+a7+a8+a9+data;break;
case 11: d=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+data;break;
default : d=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+data;break;
}
}
System.out.println("输入日期是当年的第几天"+d);
}
}
7. 程序运行结果
8.编程中遇到的困难及解决方法
由于自己时间过长的遗忘及知识的局限性使得在程序的编译中存在一些问题,对每个功能模块的理解,以及主函数的功能,都是在老师的讲解下有了更深的了解。
编写主函数根据一些例题的模式以及自己的所要实现的功能来完成;每一个子模块,也是根据例题模块,以及要实现的功能编写,用到了文件,结构体类型,数组,类型的装换等等,文件以及结构体类型,通过查看书本完成的,类型的装换是通过老师和同学的帮忙解决的。
在运行过程中,每个模块运行后不能接着下一个模块,也是在老师的帮助下完成的,总体程序还是比较简单的。
9.总结及建议
经过这几天的实习使我了解到]java面向对象程序设计的重要性,之前接触到的]java面向对象程序设计内容都是理论上的,理论知识知道的比较多,但是没怎么用到实际操作当中。
这次上机实习给了我一次真正认识]java面向对象程序设计的机会,刚开始我一脸的迷茫,不知道从哪里开始动手,觉得]java面向对象程序设计是一种很深奥的东西,对于刚开始接触这门课程的我来说非常的不适应。
很多东西都是第一次:第一次真正认真的投入]java面向对象程序设计当中,第一次用自己在课堂上学习的东西逐步的去解决实际问题,这次是完成实验设备信息的管理。
经过这次实习,我知道自己的计算机知识还是相当有限的,在这次的程序编译过程中遇到了很多自己无法解决的问题,可是通过老师的指导,上网查看资料,问高年级的学长学姐等方法,最终问题都基本解决了。
这次]java面向对象程序设计给我的帮助是很大的。
虽然到现在我还掌握得不好。
所以在
以后的学习生活中我会更加注重这方面的实际操作,提高自己的实际动手操作能力,解决实际问题的能力以及提升自己的计算机水平。
10.致谢
]java面向对象程序设计是一门非常重要的计算机基础课,学得好与否对我们以后都很重要。
真诚的感谢老师在这次课程设计中给予的种种帮助,是我从对该课程的懵懂一步步到了解以及深入的学习。
为以后的学习打下良好的基础。
虽然只有短短的这几天,但我收获很多,而且让我慢慢的对计算机产生了兴趣。
参考文献
[1]java面向对象程序设计
[2]百度文库。