Java课程设计报告.docx
- 文档编号:23348403
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:34
- 大小:504.26KB
Java课程设计报告.docx
《Java课程设计报告.docx》由会员分享,可在线阅读,更多相关《Java课程设计报告.docx(34页珍藏版)》请在冰豆网上搜索。
Java课程设计报告
****学院
《Java平台与应用开发》课程设计报告
学院:
_电气与信息工程学院_专业班级:
计科2013-04
学生姓名:
**学号:
**********
设计地点(单位)___计算机基础自主学习中心____
设计题目:
________记忆测试程序设计_______________
________运动会管理程序设计_______________
完成日期:
2015年7月10日
指导教师评语:
_______________________________________
____________________________________________________________________________________________________________________________________________________________________________________________________________________
成绩(五级记分制):
________________
指导教师(签字):
________________
重庆科技学院
课程设计任务书
设计题目:
记忆测试程序设计
学生姓名
学号:
课程名称
Java平台与应用开发课程设计
专业班级
地点
计算机基础自主学习中心
起止时间
2015.6.29-2015.7.10
设计内容及要求
内容:
设计一个程序实现通过回忆法测试记忆,分为初、中、高三个级别,并通过记忆榜存储每个级别的成绩。
自选图像。
要求:
单击“级别”菜单可以选择初级、中级、高级,单击“排行榜”可以查看三个级别的历史成绩;
选择级别后,将显示相应级别的测试区域。
测试区域由若干个方块组成,每个方块上都有一个图标,默认情况下不可见。
用鼠标单击测试区中的任何一个方块,则计时器开始计时,同时该方块上的图标显示出来,当单击另一个方块时,如果该方块上的图标与上一个相同,则该方块的图标和前n次单击出的方块的图标均显示出来,如果该方块上的图标与上一个不相同,则前n次单击显示的图标均不可见。
如果连续单击n个图标相同的方块,并n=相应级别要求的数,则本次测试结束,将显示保存成绩对话框,用户可以选择是否将自己所花费的时间作为成绩记录下来,成绩可以保存在文件或数据库中。
设计
参数
测试区域方块数量不得少于5行5列,相应级别的n>3。
进度
要求
2015.6.29完成任务的讲解、并接受课程设计任务,选定课程设计的题目
2015.6.30了解任务的算法、并画出算法的程序流程图,对任务的关键技术进行验证、并确定解决办法
2015.7.1-2015.7.3程序设计及编码,上机调试
2015.7.6对程序进行调试,设计测试用例进行测试
2015.7.7整理课程设计的过程、并进行总结,完善程序功能
2015.7.8编写课程设计报告初稿
2015.7.9完善课程设计报告、并准备答辨
2015.7.10提交课程设计报告和程序,进行答辨
参考资料
1.叶核亚,Java程序设计实用教程,电子工业出版社,2013.11
2.(美)Y.DanielLiang(著)李娜(译),Java语言程序设计.基础篇(原书第8版),机械工业出版社,2011.6
其它
说明
1.本表应在每次实施前一周由负责教师填写二份,学院审批后交学院教务办备案,一份由负责教师留用。
2.若填写内容较多可另纸附后。
3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。
系主任:
指导教师:
2015年6月20日
重庆科技学院
课程设计任务书
设计题目:
运动会管理程序设计
学生姓名
学号:
课程名称
Java平台与应用开发课程设计
专业班级
地点
计算机基础自主学习中心
起止时间
2015.6.29-2015.7.10
设计内容及要求
内容:
设计一个简单的C/S模式运动会管理程序,该程序实现以下功能:
运动员可以查询自己的比赛项目及比赛结果,管理员可以根据记录的比赛项目的成绩进行成绩统计。
程序采用数据库保存运动员、比赛项目以及不同类型比赛的参赛数据。
要求:
①运动员可以查看运动员所在代表队的名称、领队、本代表队的总积分、总名次;还可以查看参加比赛的项目、每个项目的成绩、积分等。
②管理员负责所有信息的录入和维护;管理员可以记录并查看运动员参加比赛项目的成绩、积分、名次;管理员可以统计各代表队的总积分、总名次;管理员可以按性别分别统计个代表队的总积分、总名次等。
③代表队信息包括:
队名称、领队姓名、总积分、总名次等;运动员信息包括:
姓名、年龄、性别、身高等;比赛项目信息包括:
项目名称、性别、项目类别(田赛或径赛)、成绩单位(秒或米)、人数等。
④一个代表队包含多个运动员,一个运动员只能属于一个代表队;一个运动员至多可以参加3个比赛项目,男子不能参加女子项目,女子也不能参加男子项目。
⑤每个比赛项目按照成绩由高到低排名,对前3名给予相应积分,第1名记3分,第2名记2分,第3名记1分。
⑥比赛项目分个人项目和集体项目,集体项目如接力赛。
⑦不考虑比赛时间和地点的安排。
统计查询功能设计合理。
设计
参数
比赛项目至少5种,代表队至少5个,每个代表队至少3个运动员。
进度
要求
2015.6.29完成任务的讲解、并接受课程设计任务,选定课程设计的题目
2015.6.30了解任务的算法、并画出算法的程序流程图,对任务的关键技术进行验证、
2015.7.1-2015.7.3程序设计及编码,上机调试
2015.7.6对程序进行调试,设计测试用例进行测试
2015.7.7整理课程设计的过程、并进行总结,完善程序功能
2015.7.8编写课程设计报告初稿
2015.7.9完善课程设计报告、并准备答辨
2015.7.10提交课程设计报告和程序,进行答辨
参考资料
1.叶核亚,Java程序设计实用教程,电子工业出版社,2013.11
2.(美)Y.DanielLiang(著)李娜(译),Java语言程序设计.基础篇(原书第8版),机械工业出版社,2011.6
其它
说明
1.本表应在每次实施前一周由负责教师填写二份,学院审批后交学院教务办备案,一份由负责教师留用。
2.若填写内容较多可另纸附后。
3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。
系主任:
指导教师:
2015年6月20日
摘要
随着计算机技术的不断发展,生产生活中产生的数据可以通过计算机编写软件实现信息化处理,这样可以大大提高工作效率以及对复杂数据的简单处理。
该报告包含两个项目内容,记忆测试程序设计以及运动会管理程序设计。
项目通过myeclipse10.0软件编写代码实现。
项目首先把数据录入数据库,通过编写软件实现对数据的处理,实现功能的需求。
记忆测试程序可以选择不同的测试等级,只需要寻找到相同的图标完成记忆测试,然后可以把测试信息录入数据库保存以便查看。
运动会管理程序通过录入运动员的信息以及取得的成绩、项目的相关信息,程序通过对数据库中的运动员信息以及项目信息的处理,达到对运动会信息的信息化管理。
通过编写的界面操作选项功能,实现不同的功能。
关键字:
数据库表图形用户界面数据处理
第一部分<记忆测试程序设计>
1设计内容和要求
1.1设计内容
设计内容:
设计一个程序实现通过回忆法测试记忆,分为初、中、高三个级别,并通过记忆榜存储每个级别的成绩。
自选图像。
1.2设计要求
设计要求:
单击“级别”菜单可以选择初级、中级、高级,单击“排行榜”可以查看三个级别的历史成绩;
选择级别后,将显示相应级别的测试区域。
测试区域由若干个方块组成,每个方块上都有一个图标,默认情况下不可见。
用鼠标单击测试区中的任何一个方块,则计时器开始计时,同时该方块上的图标显示出来,当单击另一个方块时,如果该方块上的图标与上一个相同,则该方块的图标和前n次单击出的方块的图标均显示出来,如果该方块上的图标与上一个不相同,则前n次单击显示的图标均不可见。
如果连续单击n个图标相同的方块,并n=相应级别要求的数,则本次测试结束,将显示保存成绩对话框,用户可以选择是否将自己所花费的时间作为成绩记录下来,成绩可以保存在文件或数据库中。
2数据库
2.1数据库的设计
记忆测试程序设计的使用方法,当测试人完成测试后,可以选择保存测试成绩或者不保存测试成绩。
如果选择保存测试成绩,即将测试等级、测试人姓名、测试成绩保存到数据库中,供后面查看等级排行榜。
数据库的设计:
表1.1数据库的构建
Name
Code
Comment
DataType
Length
测试等级号
测试等级
选择测试的登记
char(4)
4
测试人姓名
测试人姓名
测试人的姓名
varchar(50)
50
测试成绩
测试成绩
测试的成绩
Int
2.2数据库的实现
图1.1记忆测试榜单
3主要方法及其功能
3.1测试界面
publicclassMemoryMainextendsJFrameimplementsActionListener
{
super("记忆测试程序");
this.bar=newJMenuBar();
this.LevelChoose=newJMenu("测试等级");
this.MarkList=newJMenu("成绩榜单");
this.helpInfo=newJMenu("帮助");
this.Level1=newJMenuItem("初级");
this.Level2=newJMenuItem("中级");
this.Level3=newJMenuItem("高级");
this.List3=newJMenuItem("高级排行榜");
this.List2=newJMenuItem("中级排行榜");
this.List1=newJMenuItem("初级排行榜");
this.help=newJMenuItem("游戏规则");
this.about=newJMenuItem("关于");
LevelChoose.add(Level1);
LevelChoose.add(Level2);
LevelChoose.add(Level3);
MarkList.add(List1);
MarkList.add(List2);
MarkList.add(List3);
helpInfo.add(help);
helpInfo.add(about);
bar.add(LevelChoose);
bar.add(MarkList);
bar.add(helpInfo);
this.setJMenuBar(bar);
publicvoidSetBlockPane(intwidth,inthigh)
{
m=width;
n=high;
block=newBlock[m*n];
icon=newImageIcon[m];
for(inti=0;i icon[i]=newImageIcon((i+1)+".jpg"); } for(inti=0;i block[i]=newBlock(); block[i].setcloseIcon(newImageIcon()); } memorytestpane=newBlockPane(block,icon,m,n); con.removeAll(); con.add(memorytestpane,BorderLayout.CENTER); con.validate(); this.validate(); } publicvoidactionPerformed(ActionEventevent){ if(event.getSource()==Level1) { SetBlockPane(5,5); setBounds(100,100,500,460); this.validate(); } } 本方法为测试程序的主界面,包含主界面的菜单选择,及选择等级以及查看榜单信息等。 主界面包含了测试区域。 3.1记录测试成绩 publicclassJiLuMarkextendsJFrameimplementsActionListener{ /** *@paramargs */ privateJButtonbutton1,button2; privateJLabellabel1,label2,label3; privateJTextFieldjtextfield1,jtextfield2,jtextfield3; publicJiLuMark(Stringlevel,Stringtime){ button1=newJButton("保存"); button2=newJButton("取消"); label1=newJLabel("等级: ",Label.RIGHT); label2=newJLabel("姓名: ",2); label3=newJLabel("成绩: ",2); jtextfield1=newJTextField(level,5); jtextfield2=newJTextField("姓名",5); jtextfield3=newJTextField(time,5); this.setBounds(100,100,350,200); this.setLayout(newGridLayout(4,2)); this.add(label1); this.add(jtextfield1); this.add(label2); this.add(jtextfield2); this.add(label3); this.add(jtextfield3); this.add(button1); this.add(button2); this.setVisible(true); button1.addActionListener(this); button2.addActionListener(this); } publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub Stringss=""+20; JiLuMarkmark=newJiLuMark("初级","20"); } publicvoidaddMark(Stringl,Stringn,intm)throwsClassNotFoundException,SQLException{ Stringsql="insertinto记忆测试榜单信息values('"+l+"','"+n+"','"+m+"')"; Connectionconn=Jdbc.getConnection(); java.sql.Statementstatement=conn.createStatement(); statement.executeUpdate(sql); statement.close(); conn.close(); } @Override publicvoidactionPerformed(ActionEvente){ //TODOAuto-generatedmethodstub if(e.getSource().equals(button1)){ StringLevel=jtextfield1.getText(); StringName=jtextfield2.getText(); StringMark=jtextfield3.getText(); intj=Integer.parseInt(Mark); //System.out.println(Level+mark); try{ this.addMark(Level,Name,j); }catch(ClassNotFoundExceptione1){ //TODOAuto-generatedcatchblock e1.printStackTrace(); }catch(SQLExceptione1){ //TODOAuto-generatedcatchblock e1.printStackTrace(); } } } 本方法主要为当测试完成时,测试者可以选择保存测试成绩结果到数据库,或者是不保存。 3.3查看榜单信息 publicclassTestMarkList{ publicTestMarkList(Stringlevel)throwsClassNotFoundException,SQLException{ JFramejf=newJFrame("成绩榜单信息"); jf.setVisible(true); jf.setSize(400,200); Stringl=level; ArrayList Connectionconn=Jdbc.getConnection(); java.sql.Statementstatement=conn.createStatement(); Stringsql="select*from记忆测试榜单信息where测试等级='"+l+"'orderby测试成绩asc"; ResultSetre=statement.executeQuery(sql); ResultSetrs=statement.executeQuery(sql);//查询语句 inti=1; while(rs.next()){ StringLevel=rs.getString("测试等级"); StringName=rs.getString("测试人姓名"); intMark=rs.getInt("测试成绩"); MarkListinfo=newMarkList(Level,Name,Mark); i++; list.add(info); } intsum=list.size(); Object[][]date=newObject[sum][4]; String[]name={"名次","测试等级","测试人姓名","测试成绩"}; intindex=0; for(MarkLista: list){ date[index][0]=index+1; date[index][1]=a.getLevel(); date[index][2]=a.getName(); date[index][3]=a.getMark(); index++; } JTabletable=newJTable(date,name); JScrollPanescrollPane=newJScrollPane(table); jf.getContentPane().add(scrollPane,BorderLayout.CENTER); } 本方法为查询保存的测试等级成绩等信息。 4测试界面 图4.1测试界面 运行程序,打开测试测试界面,点击菜单的测试等级选择不同等级,点击成绩榜单可以查看不同等级的测试成绩榜单信息。 也可以点击帮助,提示帮助显示测试方法。 第二部分<运动会管理程序设计> 5设计内容和要求 5.1设计内容 内容: 设计一个简单的C/S模式运动会管理程序,该程序实现以下功能: 运动员可以查询自己的比赛项目及比赛结果,管理员可以根据记录的比赛项目的成绩进行成绩统计。 程序采用数据库保存运动员、比赛项目以及不同类型比赛的参赛数据。 5.2设计要求 要求: ①运动员可以查看运动员所在代表队的名称、领队、本代表队的总积分、总名次;还可以查看参加比赛的项目、每个项目的成绩、积分等。 ②管理员负责所有信息的录入和维护;管理员可以记录并查看运动员参加比赛项目的成绩、积分、名次;管理员可以统计各代表队的总积分、总名次;管理员可以按性别分别统计个代表队的总积分、总名次等。 ③代表队信息包括: 队名称、领队姓名、总积分、总名次等;运动员信息包括: 姓名、年龄、性别、身高等;比赛项目信息包括: 项目名称、性别、项目类别(田赛或径赛)、成绩单位(秒或米)、人数等。 ④一个代表队包含多个运动员,一个运动员只能属于一个代表队;一个运动员至多可以参加3个比赛项目,男子不能参加女子项目,女子也不能参加男子项目。 ⑤每个比赛项目按照成绩由高到低排名,对前3名给予相应积分,第1名记3分,第2名记2分,第3名记1分。 ⑥比赛项目分个人项目和集体项目,集体项目如接力赛。 ⑦不考虑比赛时间和地点的安排。 统计查询功能设计合理。 6数据存储 6.1数据库的设计 首先分析项目功能,进行需求分析,获取项目的需求目的,根据需求构建数据库。 本项目需要统计运动员信息以及代表队的相关信息。 运动员的信息包括编号、姓名、性别、年龄、代表队名称、项目名称、每次、成绩、积分等信息。 代表队的信息包括项目名称、项目性别、项目类别、项目的人数等信息,所以需要建立运动员信息表以及项目信息表。 表6.1运动员信息 Name Code Comment DataType Length 运动员编号 运动员编号 运动员的编号 char(3) 3 姓名 姓名 运动员姓
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 课程设计 报告