admin 管理员组文章数量: 887021
2023年12月24日发(作者:源码用来表示什么)
课程设计报告
课程名称 _________ JAVA 程序设计 __________________
课题名称 小学生数学练习题目自动生成系统 _______
专 业 _____________ 信息管理与信息系统 _____________
班 级 ___________________________________
学 号 _______________________________
姓 名 _____________________________________
指导教师 ________ 李峰、谢雅、赵锦元 ______________
2016年7月2日i
湖南工程学院
课程设计任务书
课程名称
课 题
JAVA程序设计 ________
小学生数学练习题目自动生成系统
专业班级 _________________________________
学生姓名 __________________________________
学 号 ______________________________
指导老师 _________ 李峰、谢雅、赵锦元 ______________
审 批 ______________________________________________
任务书下达日期 2016年6月14 日
任务完成日期 2016年7月 2 日2
一、设计内容与设计要求
1.课程设计目的
全面熟悉、掌握 JAVA 程序设计基本知识,增强对不同的问题运用和灵活选 择合适的数据结构以及 JAVA 程序设计的本领,熟悉编制和调试程序的技巧,掌 握分析结果的若干有效方法,进一步提高上机动手能力,增强 JAVA 程序设计概 念,熟悉 java 语言编程,养成提供文档资料的习惯和规范编程的思想,为后继 课程的实验以及课程设计打下较扎实的基础。
进一步提高上机动手能力, 培养使用计算机解决实际问题的能力, 为后继课 程的实验以及课程设计,特别是自学、毕业论文的完成打下扎实的基础。
2.课题题目
⑴计算器
⑵简单投票管理系统
⑶小学生数学练习题目自动生成系统
⑷电子英汉词典
⑸标准化考试系统
[6] Hannoi 塔
3.设计要求
⑴设计课题题目:按学号顺序(每 10位学生选择一题)选择相应题号的 课题。换题者不记成绩。
⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包括 系统设计目的与意义;系统功能需求(系统流程图) ;输入输出的要求。②
完成系统总体设计:包括系统功能分析;系统功能模块划分与设计(系统功 能模块图)。③完成系统详细设计:包括需求分析;类层次图;界面设计与 各功能模块实现。 ④系统调试: 调试出现的主要问题, 编译语法错误及修改,
3
重点是运行逻辑问题修改和调整。⑤使用说明书及编程体会:说明如何
使用你编写的程序,详细列出每一步的操作步骤。⑥关键源程序(带注释)
⑶按规定格式完成课程设计报告 (源代码),将其打印稿 (A4 纸)上交给老师
存档。
⑷不得抄袭他人程序、课程设计报告,每个人应体现自己的个性设计。
进度安排
第 17 周
星期二
星期五
六
日
星期星期
下午
14:30-18:30
下午
14:30-18:30
下午
14:30-18:30
下午
14:30-18:30
第 18 周 周一上午 8:00-12:00 下午 14:30-18:304
目录
1 需 1...
求分析
1.1系统设计题目 .................................................... 1..
1.2目的与要求
......................................................................... 1...
2 总 2...
2.1 用2...
2.2 题2...
户目体信信息息设模模计
板
块
2.3 选题情况信息模块 ................................................ 2..
2.4 答2...
题细信息设模块
计 3 详 3...
3.1系统E-R图 ...................................................... 3.
3.2 数据类型
......................................................................... 3...
3.3功能模块实现 .................................................... 4..
3.4 java源文件及其方法 ............................................. 4.
3.5 主要组件设计 .................................................. 4...
3.6 类的设计 ...................................................... 5...
4.调试及运行结果
......................................................................... 5...
4.1 1 0以内的加减法测试 ............................................. 5..
4.2 1 00以内乘除法测试 ............................................. 6..
4.3完成测试 ....................................................... 6...
5 心得体会
8...
6 参考文献
5
9...
7 附录
1..0.
7.1 源代码 ........................................................ 1..0.
8 评分表
3..0.6
1 需求分析
1.1
系统设计题目
小学生数学练习题目自动生成系统
1.2
目的与要求
(1)设计要求
编写一个能够自动生成小学生数学练习题目的程序。 设计一个程序, 能够根 据用户的选择生成“ 10以内加法”、“10 以内减法”、“ 20以内加法”、“20以内减
法”、“100以内加法”、“100以内减法”、“100以内乘法”、“100以内除法” 8种 类型的题目,要求每个题目能够随机生成,并符合以下要求:
10 以内加法的得数在不大于 10 的范围内;
20 以内加法的得数在不大于 20 的范围内;
100以内加法的得数在不大于 100 的范围内;
10 以内减法的两个运算数在不大于 10的范围内并且差为非负数;
20 以内减法的两个运算数在不大于 20的范围内并且差为非负数; 100以内减法的两个运算数在不大于 100 的范围内并且差为非负数; 100以内乘法的得数在不大于 100 的范围内;
100 以内除法的两个运算数在不大于 100 的范围内并且被除数应该是除数的 整数倍;
要求程序具备以下功能:根据用户对“题目类型”的选择,在按下“出题” 按钮之后,每次显示 20 个相应类型的题目,用户可以在界面上填写计算结果; 答题完成之后,当用户按下“评卷”按钮时,根据用户的答题结果,在界面上可 以显示红色的“V”或“X”符号,以作为对用户的答题结果的评判。当用户按 下“答案”按钮时,在界面上显示正确的运算结果。
(2)输入 /输出要求
输入要求:用户能够在界面上输入题目的计算结果; 输出要求:程序可以在界面上显示 20 个用户所需的类型的题目,以红色的
/或“X
1
符号显示对用户计算结果的评判结果,以及所给出的题目的正确答案。
2 总体设计
小学生数学练习题目自动生成系统主要包括用户信息、 题目信息、选题情况 信息、答题信息、历史成绩信息五个功能模块。
2.1
用户信息模板
用户信息模块主要包括用户的信息以及用户的实施操作。用户信息模块 包括:用户姓名,用户编号,所属班级,用户性别,联系电话 ,家庭住址等相关 信息。
用户的实施操作:用户可以通过其包含的相关信息,与其他模块进行连接, 可以在此系统中依次的进行题型选择, 用户答题, 显示正确答案以及记录历史答 题信息等功能。
2.2
题目信息模块
题目信息模块主要实现对数学练习题目信息的管理记录。 题目信息模块主要 包括:题目编号,甲空,题目题型,乙空,正确结果等相关信息。
2.3
选题情况信息模块
选题情况信息模块主要实现对所具有的题目项目进行管理记录, 根据对用户 的基础信息和题目信息的相应连接可以实现不同用户对题型的选择, 从而可以形 成不同的题型,生成相对应的试卷。选题情况信息模块主要包括:用户编号,题 目题型,题目编号等相关信息。
2.4
答题信息模块
答题信息模块主要是为了实现与选题情况信息进行对接, 根据实现后的答题 信息可以直接录入到系统中进行记录。 答题信息模块主要包括: 用户编号, 题目
题型,题目编号,所填答案等相
2
3详细设计
3.1系统E-R图
(e Ei牢主 〉匕三^
b
[业沖喜集〉 厂闻户彌扌)£坤4悅聲兀席鼻毀玄〕「肮.*电迟
-
< 遶
I® >
图3.1系统E-R图
3.2数据类型
public JLabel jlQuestio n1;〃 题目标题
public JLabel jlQuestio n2;〃 题目内容
public JLabel jlA nswer;// 答案标题
public JLabel jlW;〃 题号
public JLabel jlT;// 正确数
public JButton jbStart;//开始游戏
public JButton jbE nd;//停止游戏
public JButton jbExit;// 退出游戏
public JTextField jtfA nswer;// 输入答案
public int m,n,l,answer,trueAnswer,x,y=20,a=0,b=0;/随机数public JRadioButt on radioButt on1;
public JRadioButt on radioButt on2;
public JRadioButt on radioButt on3;
public JRadioButt on radioButt on4;
public JRadioButt on radioButt on5;
3
、n,计数参数 m
public JRadioButt on radioButt on6;
public Butt on Group groupl;
public Butt on Group group2;
3.3功能模块实现
(1) 符号模块:
符号选择只能有一个符号,所以选择单选按钮来实现符号选择功能,先建立 一个标签为符号选择标签。然后建立四个单选按钮,并用 group方法实现其单选 功能。最后注册监听器,用ItemListe ner监听器实现。
(2) 运算范围选择模块:
实现方法同符号选择模块,为单选按钮,注册ItemListe ner监听器。
(3) 题号与正确题数:
定义两个int型变量,将题号和正确题数传递给这两个变量。
(4) 题目生成:
用()*a生成随机数,将其赋值给两个int型变量。
(5) 结果输入框:
建立一个输入框,将答案输入的时候,可获得答案,将答案与之前定义的 an swe进行比较,比较结果相同时正确题数加 1,题号加1,生成新题目。
3.4 java源文件及其方法
没有表号
序号 类名 功能
框架
监听器
1
2
3
JFrame
Action Liste ner
Container
Actio nEvent 4
r
事件
3.5主要组件设计
根据要求软件要能选择运算符号,还有运算范围。能根据测试者做对的题数 给予鼓励
运算符号选择界面,有四种符号,都分别用单选按钮来实现,再注册事件监 听器。4
运算范围界面,有两种,同样用单选按钮来实现,注册事件监听器。题号, 正确题数,题目分别是三个标签。答案输入框是一个文字输入框。开始测试,完 成测试,结束测试是三个注册了事件监听器的按钮。
3.6类的设计
定义一个主类,在里面定义构造方法,还有监听器等组件
4.调试及运行结果
4.1 10以内的加减法测试
(1)选择10以内的加法进行测试
Muy
■工軽翼-
诃叭■谓!M删科-
■ m内椚z・
om : —¥
T _■
二■也mkf
.■旺Ht境
图4,1 10以内加法测试
(2)选择10以内的减法进行测试
5
图4.2 10以内的减法测试
4.2 100以内乘除法测试
(1) 选择100以内乘法运算测试。
图4.3 100以内乘法测试
(2)选择100内的除法运算结果
图4.4 100内的除法测试
4.3完成测试
(1)测试通过6
•廿口|和昭
直确E" 口
isn :
州g刊试
■»宴二
(2)测试没及格
帝底•-加送话N •
1T话轉持:
JfMsdlK
ifWWO : 0
图4.5测试通过
图4.6测试没及格
7
5 心得体会
课程设计对学生而言是其对所学课程内容掌握情况的一次自我验证, 从而有 着极其重要的意义。 通过课程设计能提高学生对所学知识的综合应用能力, 能全 面检查并掌握所学内容;《JAVA程序设计》从课程性质上讲是一门专业基础课, 它的目的和任务就是训练学生对java语言的认识,让学生对计算机编程有更进一 部的认识,进而增加其对学习和应用相关专业课的兴趣。
通过这次课程设计使我懂得了理论与实际相结合是很重要的, 只有理论知识 是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论, 将结论用于实践, 从而提高自己的实际动手能力和独立思考的能力。 在设计的过 程中当然遇到了问题, 可以说得是困难重重, 毕竟这是不可避免的, 同时在设计 的过程中发现了自己的不足之处, 对以前所学过的知识理解得不够深刻, 掌握得 不够牢固。 由于能力有限, 其中文档的编写是参考书上资料, 我想在以后的学习 中,要更注重实践这一环节。 通过这次课程设计使我们懂得了理论与实际相结合 是很重要的, 只有理论知识是远远不够的, 只有把所学的理论知识与实践相结合 起来,从理论中得出结论,
才能真正为社会服务, 从而提高自己的实际动手能力 和独立思考的能力。 在设计的过程中遇到种种问题, 同时在设计的过程中发现了 自己的不足之处, 对一些前面学过的知识理解得不够深刻, 掌握得不够牢固, 通 过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。
从设计过程看, 在整整两个星期的日子里, 做到精益求精, 学到了很多很多 的东西,同时不仅可以巩固了以前所学过的知识, 而且学到了很多在书本上所没 有学到过的知识。从设计结果看, 设计要求完成任务, 达到了预期的目的, 设计、 演示效果较好。最主要是从中学到了知识。
通过这次课程设计, 我学到了很多, 得到了很多, 不仅充分的将在书本中学 到的知识运用到解决实际问题上, 而且加强了自己的动手能力。 我会总结出这次 课程设计的所有的成功以及失败的经验和心得, 并希望老师能够批评指出存在的 错误之处,期待有更多的机会让我实践理论知识。
总的来说,这次课程设计确实学到很多,不仅锻炼了我遇到问题解决问题 的勇气和能力, 还练就了遇到挫折不达目的不罢休的韧性, 这在以后的工作与学 习中将会非常重要。
8
6 参考文献
[1] 刘万军,郑少京,王松波,梁清华JAVA6程序设计实践教程[M].第1版,北京:清 华大学出版社 ,2009
[2] 语言程序设计(基础篇)[M].第8版,机械工业出版社出版
社,2011
[3] 杨树林等,Java语言最新实用案例教程(第2版)[M].清华大学出版社.2010.7
[4] 张帆等,Java范例开发大全•清华大学出版社• 2009.8
⑸ 陈天河,Struts,Hibernate,Spring集成开发宝典. 电子工业出版社,2007.12
[6] Craig Walls, Ryan Breidenbach.Spring in Action. 人民邮电出版社, 2008.10
[7] 韩万江,姜立新,软件项目管理案例教程. 机械工业出版社, 2007.129
7 附录
7.1
源代码
import .*;
import .*;
import .*;
class EnglishGame extends JFrame implements ActionListener,ItemListener
{public JLabel jlQuestio n1;〃 题目标题
public JLabel jlQuestio n2;〃题目内容
public JLabel jIAn swer;// 答案标题
public JLabel jlW;〃 题号
public JLabel jlT;// 正确数
public JButton jbStart;//开始游戏
public JButton jbE nd;//停止游戏
public JButton jbExit;// 退出游戏
public JTextField jtfA nswer;// 输入答案
public int m,n,l,answer,trueAnswer,x,y=6,a=0,b=0;/随机数m、n,计数参 数
public JRadioButton radioButton1;
public JRadioButton radioButton2;
public JRadioButton radioButton3;
public JRadioButton radioButton4;
public JRadioButton radioButton5;
public JRadioButton radioButton6;
10
public ButtonGroup group1;
public ButtonGroup group2;
public EnglishGame()
{
//构造函数 ,设计面板
utt on 1= new JRadioButto n("加法运算 +");
mListener(this);
utton2=new JRadioButton("减法运算-");
mListener(this);
utton3=new JRadioButton("乘法运算 *");
mListener(this);
utton4=new JRadioButton("除法运算 /");
mListener(this);
1=new ButtonGroup(); (radioButton1);
(radioButton2);
(radioButton3);
(radioButton4);
mListener(this);
mListener(this);
mListener(this);
mListener(this);
utton5=new JRadioButton("10 以内的运算");
utton6=new JRadioButton("100 以内的运算");
2=new ButtonGroup(); (radioButton5);
(radioButton6);
mListener(this);
mListener(this);
this.x=0;〃参数初始化
swer=0;
le("小学生算术运算测试软件");//控件初始化
out(new GridLayout(4,6));//7 行 2 列布局
tion1=new JLabel();
t(‘题目:");
11
tion2=new JLabel();
er=new JLabel();
t(”答案:");
//Imagelcon icon=new Imagelcon("QQ图片大兵.png"); t=new
JButton("开始测试");
io nListe ner(this);// 添加事件监听器 =new
JButton(”完成测试");
jbE nabled(false);/开始时不可用
jbE io nListe ner(this);// 添加事件监听器 =new
JButton(” 退出游戏");
io nListe ner(this);// 添加事件监听器 wer=new
JTextField();
jlW=new JLabel();
t("题号:"+x);
jlT=new JLabel();
t(” 正确提交:"+trueA nswer);
//控件第一行
( new JLabel('请选择运算符:"));
(radioButton1);
(radioButton2);
(radioButton3);
(radioButton4);
//控件第二行
( new JLabel("请选择运算范围:"));
(radioButton5);
(new JLabel());
(new JLabel());
(radioButton6);
//控件第三行
(jlW);// 添加控件 题号 1 (jlT);// 正确数 2 (new
12
JLabel());
(jlQuestion1);〃题目标题 2
(jlQuestion2);〃题目内容 3
//控件第四行
(jbStart);//开始游戏 (jbE nd);//停止游戏 (jbExit);//
退出游戏 (jlAnswer);//答案标题 4 (jtfA nswer);// 输入答案
}
5
public void creatQuestion1()/新建题目,10 以内加法
{
this.m=(int)(()*1 1);//随机运算数
this.n=(int)(()*11);
an swer=m+n;//加法结果
t(m+""+"+"+n+"=?");〃 使label显示题目内
}public void creatQuestion2()
{
//新建题目 ,10以内减法
this.m=(int)(()*1 1);//随机运算数
this.n=(int)(()*11);
answer=m-n; //减法结果
}t(m+""+"-"+n+"=?");〃 使label显示题目内容
public void creatQuestion3()/新建题目,10 以内乘法
{
this.m=(int)(()*1 1);//随机运算数
this.n=(int)(()*11); an swer=m* n;〃乘法结果
t(m+""+"*"+n+"=?");〃 使label显示题目内容
}
public void creatQuestion4()
{//新建题目 ,10以内除法
this.m=(int)(()*11);〃 随机运算数
this.n=(int)(()*11);
an swer=(i nt)(m/n);〃 除法结果
13
t(m+""+"/"+n+"=?");〃 使label显示题目内容
}public void creatQuestion5()
{//新建题目 ,100以内加法
this.m=(int)(()*101);〃 随机运算数
this.n=(int)(()*101);
an swer=m+n;//加法结果
t(m+""+"+"+n+"=?");〃 使label显示题目内容
}public void creatQuestion6()
{//新建题目 ,100以内加减法
this.m=(int)(()*101);〃 随机运算数
this.n=(int)(()*101);
an swer=m-n;〃减法结果
t(m+""+"-"+n+"=?");〃 使label显示题目内容
}public void creatQuestion7()
{//新建题目 ,100以内乘法
this.m=(int)(()*101);〃 随机运算数
this.n=(int)(()*101);
an swer=m* n;〃乘法结果
t(m+""+"*"+n+"=?");〃 使label显示题目内容
}public void creatQuestion8()
{//新建题目 ,100以内除法 this.m=(int)(()*101);// 随机运算数
this.n=(int)(()*101);
an swer=(i nt)(m/n);〃 除法结果
t(m+""+"/"+n+"=?");〃 使label显示题目内容
}
public void test()
{//检测函数,检测是否做到 10 道题
if(this.x==y)
{//如果做够数目
tC题号:0");//界面初始化 t("正确提交:0");
14
t(开始测试"); t("");
t("");
if(trueAnswer>(int)(y*0.6))
{ssageDialog( null , 你" 真棒,及格了 !!!题 目 数 : "+y+" , 测 试 得 分 : "+(10*trueAnswer),"" ,
JOptio nPa ne」NFORMATION_MESSAGE);〃 弹出统计对话框
}
else
{
ssageDialog( null , 努" 力吧,小盆友,沒 及
格 题 目 数 : "+y+" , 测 试 得 分 : "+(10*trueAnswer),"" ,
JOptio nPa ne」NFORMATION_MESSAGE);〃 弹出统计对话框
}
x=0;//数据初始化
trueAnswer=0;
nabled(true);/设置对应按钮是否可用
bled(false);
}
public void showMe()// 窗体显示函数
{
e(800,500);/窗体大小
ible(true);//窗体可见
aultCloseOperation(_ON_CLOSE);〃窗体关闭
方式
}
public void itemStateChanged(ItemEvent e) {
if(rce() == radioButton1){ a=1;
}
else if(rce() == radioButton2){ a=2;
}
else if(rce() == radioButton3){ a=3;
}
15
else if(rce() == radioButton4){ a=4;
}
else if(rce() == radioButton5){ b=1;
}
else if(rce() == radioButton6){ b=2;
}16
LV
!()Cuons8 noieao
}
((L==q)^(e==B)^(u 雷—蚩“==()ixo 丄 gbwisqDM os©
{
:(..雷一山 Mo 丄 gswisq!
:()乙 u oqso noeaio
} ((L==q)^fe==B)^(u 雷—蚩“==()ixo 丄 gbwisqDM os©
{
:(..雷一山 Mo 丄 gswisq!
iOl^uonsa nowao
} ((L==q)^(L==B)^(u 雷—蚩“==()1X0丄gb wisqD"! OSQ
{
翦卫士莆 //:(39VSS3IAI_NOIlVIAIdOdNr9ueduondor
1
XlftfWB
1 Hnu )6o|eiae6ess8|A|Moqs 8ueduondor
}((O==q)^^(o==e))jj asp
{
M»$fBW:(8n^)P8lclBU3^spu3qr
t(x+“ :菩雷Jixo丄旧S MI!
!++x
凰耶直虽豐菩
M»$fBW:(8n^)P8lclBU3^spu3qr
:(..雷一販)1X0 丄 gswisq!
}
WKWtf ..==()|X8B86 peisqD)j!
}
±BWKWtf//(^^Sq[==()9O-inos^6-8)j!
} 重〃
(8 lu8A3U0!Pv)P9LUJ0P9dU0!PB PjOA siqnd
t(下一题");
}
else if((t()=='第一题")&&(a==4)&&( b==1))
{creatQuestion4();
t("下 一题");
}
else if((t()=='第一题")&&(a==1)&&( b==2))
{creatQuestion5();
t("下 一题");
}
else if((t()=='第一题")&&(a==2)&&( b==2))
{
creatQuestion6();
t('下一题");
}
else if((t()=='第一题")&&(a==3)&&( b==2))
{
creatQuestion7();
t('下一题");
}
else if((t()=='第一题")&&(a==4)&&( b==2))
{creatQuestion8();
t("下 一题");
}
else if((t()=='第一题")&&( a==1)&&( b==1))
{creatQuestion1();
t("下 一题");
}
else if((t()=="下一题")&&(a==1)&&( b==1))
{
int q=nt(t());
n(answer);
n(trueAnswer);
try{
18
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n1();/新建题目
x++;
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t("");〃 答案输入框置空
}
else
{ //答案错误
n("chuo");
x++;
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t("");
}
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , "输入有误!19
",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10 t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}else if((t()=="下一题")&&(a==2)&&( b==1)) { int
q=nt(t());
n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一 creatQuestio
n2();/新建题目 x++;
t('题号:"+x); t(” 正确提交:"+trueA nswer); test();//判断题目总数
t("") ;//答案输入框置空
}
else
{ //答案错误
n("chuo");
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer); test();//判断题目总数20
t("");
}
catch(NumberFormatException nfe) {//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x); t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x); t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==3)&&( b==1))
{
int q=nt(t()); n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n3();/新建题目
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer); test();//判断题目总数
t("") ;//答案输入框置空
else
{ // 答案错误 n("chuo"); x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃判断题目总数 t("");
21
}
}
catch(NumberFormatException nfe) {//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==4)&&( b==1))
{
int q=nt(t());
n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n4();/新建题目
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t(" " );//答案输入框置空
}
else
{ //答案错误
n("chuo");
x++;
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
22
test();//判断题目总数
t("");
}
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==1)&&( b==2))
{
int q=nt(t());
n(answer); n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n5();/新建题目
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t(" " );//答案输入框置空
}
else
{ //答案错误
23
n("chuo");
x++;
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t("");
}
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==2)&&( b==2))
{
int q=nt(t()); n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一 creatQuestio n6();/新建题目 x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer); test();//判断题目总数
t("") ;//答案输入框置空
}
24
else
{ //答案错误
n("chuo");
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer); test();//判断题目总数
t("");25
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==3)&&( b==2))
{
int q=nt(t());
n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n7();/新建题目
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t("") ;//答案输入框置空
else
{
//答案错误
}
26
n("chuo");
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃判断题目总数 t("");
}
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
}
else if((t()=="下一题")&&(a==4)&&( b==2))
{
int q=nt(t()); n(answer);
n(trueAnswer);
try{
if(q==a nswer)// 答案正确
{
trueA nswer++;〃正确回答数增一
creatQuestio n8();/新建题目
x++;
t('题号:"+x);
t(” 正确提交:"+trueA nswer);
27
test();//判断题目总数
t(" " );//答案输入框置空
}
else
{ //答案错误
n("chuo");
x++;
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();//判断题目总数
t("");
}
}
catch(NumberFormatException nfe)
{//转换异常处理
ssageDialog( null , " 输 入 有 误 ! ",""
JOptio nPa _MESSAGE);/提示有误
}
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
test();〃测试题目总数是否够10
t("题号:"+x);
t(” 正确提交:"+trueA nswer);
else if(rce()==jbEnd) {//中途结束游戏按钮
t('题号:0");//界面初始化
jl「setText("正确提交:0");
t(开始游戏"); t("");
bled(true); bled(false);
//bled(false);
28
ssageDialog( null,题目数:"+x+",测试得 分:"+(10*trueAnswer),"" , JOptionPane」NFORMATION_MESSAGE);〃统计信息 对话框
}
else if(rce()==jbExit)
{//退出游戏按钮
(0);
}
}
public static void main(String[] args)
{
EnglishGame y=new EnglishGame();
();
atio nRelativeTo( null);//窗体在屏幕中央打开
}
}29
8评分表
计算机与通信学院课程设计评分表
课程名称:java程序设计
项 目
评 价
设计与调试结果
设计说明书的质量
答辩陈述与回答问题情况
课程设计周表现情况
综合成绩
教师签名: _____________
日 期: ________________
30
版权声明:本文标题:小学生数学练习题目自动生成系统——JAVA课程设计 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1703394053h449347.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论