ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:106.06KB ,
资源ID:12595097      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12595097.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(小学算术运算检测软件.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

小学算术运算检测软件.docx

1、小学算术运算检测软件软 件 学 院课程设计报告书课程名称 面向对象程序课程设计 设计题目 小学算术运算测试软件 专业班级 嵌软112 学 号 1120030220 姓 名 吴晓冬 指导教师 文涛 2013 年 6 月1 设计时间 22 设计目的 23 设计题目 24设计任务 25 设计容 25.1程序设计与分析 25.2程序结构 35.3程序说明 45.4源程序 45功能模块实现 146运行与测试 156.1系统提供开始界面 156.2系统提供运算式界面 156.3系统提供提交界面 166.4系统提供结果界面 167总结与展望 16参考文献 17成绩评定 17 1 设计时间 2013年6月8日

2、-2013年6月14日2 设计目的面向对象程序设计是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高应用能力。3 设计题目小学算术运算检测软件4设计任务设计GUI界面,通过选择不同运算符(如加减法、乘除法)及运算数的围(如10以、100以等)后随机产生指定书目(10道,20道等)的运算式子,测试提交后自动评分,根据不同测试结果给出提示(如“你真棒”,”继续努力”等)。5 设计容 5

3、.1程序设计与分析按照软件基本功能分为以下四部(1)设计GUI界面,假想界面:图5.1假想界面(2)选择不同运算符(如加减法、乘除法),选择不同运算数的围(如10以、100以等)。通过界面上加、减、乘、除四个按钮和10以、100以两个按钮进行选择。(3)随机产生指定数目(10道,20道等)的运算式子(4)测试提交后自动评分根据不同测试结果给出提示(如“你真棒”,”继续努力”等)。5.2程序结构图5.1程序结构5.3程序说明(1)、当进入“运算测试程序”界面时,根据计算机随机得出的题目,在输入框中输入运算结果,。(2)、选择“下题”按钮进入下一题。(3)、计算机通过“if”语句判断执行次数是否达

4、到10次,到达指定次数根据不同测试结果给出提示(答对810道输出“你真棒”,答对07道题输出“继续努力”)。(4)、结束。5.4源程序import java.awt.*;import java.awt.event.*;import java.util.*;public class Test public Test() Frame f = new Frame(小学算术运算检测); f.setBounds(200, 100, 340, 300); M1 m1 = new M1(); f.addWindowListener(m1); f.setLayout(new GridLayout(5, 1);

5、 Button b1 = new Button(); Button b2 = new Button(); Button b3 = new Button(); Button b4 = new Button(); Button b5 = new Button(10以); Button b6 = new Button(100以); Button b7 = new Button(开始检测); Label l1 = new Label(算术运算检测器); Label l2 = new Label(请选择); Label l3 = new Label(运算法则); Label l4 = new Label

6、(运算数围); Panel p1 = new Panel(null); Panel p2 = new Panel(null); Panel p3 = new Panel(null); Panel p4 = new Panel(null); Panel p5 = new Panel(null); p1.setLayout(new FlowLayout(); p2.setLayout(new FlowLayout(); p3.setLayout(new GridLayout(1, 5); p4.setLayout(new GridLayout(1, 3); p5.setLayout(new Gri

7、dLayout(1, 1); p1.add(l1); p2.add(l2); p3.add(l3); p3.add(b1); p3.add(b2); p3.add(b3); p3.add(b4); p4.add(l4); p4.add(b5); p4.add(b6); p5.add(b7); f.add(p1); f.add(p2); f.add(p3); f.add(p4); f.add(p5); M2 m2 = new M2(); M3 m3 = new M3(); M4 m4 = new M4(); M5 m5 = new M5(); M6 m6 = new M6(); M7 m7 =

8、new M7(); M0 m8 = new M0(); b1.addActionListener(m2); b2.addActionListener(m3); b3.addActionListener(m4); b4.addActionListener(m5); b5.addActionListener(m6); b6.addActionListener(m7); b7.addActionListener(m8); f.setVisible(true); public static void main(String args) Test a = new Test(); class M1 imp

9、lements WindowListener public void windowActivated(WindowEvent e) public void windowClosed(WindowEvent e) public void windowClosing(WindowEvent e) System.exit(-1); public void windowDeactivated(WindowEvent e) public void windowDeiconified(WindowEvent e) public void windowIconified(WindowEvent e) pub

10、lic void windowOpened(WindowEvent e) static String s = null; static int num = 1; static int sum = 0; static int score = 0; static int j = 0; static int x1 = 0; static int x2 = 0; class M2 implements ActionListener public void actionPerformed(ActionEvent e) s =+; class M3 implements ActionListener pu

11、blic void actionPerformed(ActionEvent e) s =-; class M4 implements ActionListener public void actionPerformed(ActionEvent e) s =*; class M5 implements ActionListener public void actionPerformed(ActionEvent e) s =/; class M6 implements ActionListener public void actionPerformed(ActionEvent e) j =10;

12、class M7 implements ActionListener public void actionPerformed(ActionEvent e) j =100; class M0 implements ActionListener public void actionPerformed(ActionEvent e) if (num = 10) Frame f = new Frame(小学算术运算检测); f.setBounds(200, 100, 340, 100); f.setLayout(new GridLayout(2, 1); M1 m1 = new M1(); f.addW

13、indowListener(m1); f.setVisible(true); TextField c = new TextField( 3); M8 m9 = new M8(c); c.addActionListener(m9); Panel p = new Panel(null); p.setLayout(new GridLayout(1, 2); Random rand = new Random(); if (j = 100) x1 =rand.nextInt(100); x2 =rand.nextInt(100); if (j = 10) x1 = rand.nextInt(10); x

14、2 = rand.nextInt(10); Label l5 = new Label(); if (s = +) sum = x1 + x2; l5.setText( + x1 + + + x2 + = ); if (s = -) sum = x1 - x2; l5.setText( + x1 + - + x2 + = ); if (s = *) sum = x1 * x2; l5.setText( + x1 + * + x2 + = ); if (s = /) sum = x1 / x2; l5.setText( + x1 + / + x2 + = ); p.add(l5); p.add(c

15、); f.add(p); Button b = new Button(提交); b.addActionListener(new M9(); f.add(b); if (num != 10) Frame f = new Frame(小学算术运算检测); f.setBounds(200, 100, 340, 100); f.setLayout(new GridLayout(2, 2); M1 m1 = new M1(); f.addWindowListener(m1); f.setVisible(true); TextField c = new TextField(请输入结果, 8); M8 m9

16、 = new M8(c); c.addActionListener(m9); Panel p = new Panel(null); p.setLayout(new GridLayout(1, 2); Random rand = new Random(); if (j = 100) x1 = rand.nextInt(100); x2 = rand.nextInt(100); if (j = 10) x1 = rand.nextInt(10); x2 = rand.nextInt(10); Label l5 = new Label(); if (s = +) sum = x1 + x2; l5.

17、setText( + x1 + + + x2 + = ); if (s = -) sum = x1 - x2; l5.setText( + x1 + - + x2 + = ); if (s = *) sum = x1 * x2; l5.setText( + x1 + * + x2 + = ); if (s = /) sum = x1 / x2; l5.setText( + x1 + / + x2 + = ); p.add(l5); p.add(c); f.add(p); num+; Button b = new Button(下一题); Button b0 = new Button(提交);

18、f.add(b0); f.add(b); b.addActionListener(new M0(); b0.addActionListener(new M8(c); class M8 implements ActionListener TextField c; M8(TextField c) this.c=c; public void actionPerformed(ActionEvent e) int t = Integer.parseInt(c.getText(); if (t = sum) score += 10; class M9 implements ActionListener p

19、ublic void actionPerformed(ActionEvent e) Frame f = new Frame(小学算术运算检测); f.setBounds(200, 100, 340, 100); f.setLayout(new FlowLayout(); M1 m1 = new M1(); f.addWindowListener(m1); Label b = null; if (score = 80) b = new Label(你的成绩是 + score + 你真棒!); else b = new Label(你的成绩是 + score + 继续努力哦!); f.add(b)

20、; f.setVisible(true); 5功能模块实现import java.awt.*;import java.awt.event.*;import java.until.*包中包含Random类,调用nextInt()方法产生符合要求的随机数public class TestTest类中包含主函数main();class M1 implements WindowListenerM1类是Test类的部类,实现窗口的关闭的监听机制。class M2 implements ActionListenerM2、M3、M4、M5、M6、M7类是Test类的部类,实现按钮的监听机制。class M9

21、 implements ActionListenerM8、M9类是Test类的部类,实现文本框对应按钮的监听机制并弹出下一界面。class M0 implements ActionListenerM0类是Test类的部类,用于实现条件的判断和输入答案与系统结果的比较。6运行与测试6.1系统提供开始界面 图6.1开始界面图6.1是系统提供的开始界面,在开始界面中我们可以选择运算法则和运算数围,通过按钮上的事件监听器发送到系统中,作为下一个选数操作的条件,点击开始检测则自动跳到下一界面。6.2系统提供运算式界面图6.2运算式界面图6.2是系统提供的运算式界面,在运算式界面中我们可以通过文本框输入运

22、算式的结果点击“提交”按钮提交答案,通过按钮上的事件监听器将事件发送到系统中备用,之后点击“下一题”按钮,通过按钮上的事件监听器将事件发送到系统中,自动跳到下一题的界面直到进行十次。6.3系统提供提交界面图6.3提交界面图6.3是系统提供的提交界面,当运算进行九次时系统产生提交界面,在提交界面中我们可以通过文本框输入最后一道运算式的结果点击“提交”按钮,通过按钮上的事件监听器将事件发送到系统中,自动跳到结果界面。6.4系统提供结果界面图6.4结果界面图6.4是系统提供的结果界面,在结果界面中我们可以看到根据运算式结果与所做的答案对比叠加的结果,输出相应的成绩和批语。7总结与展望在这次课程设计的

23、过程中我有了很多收获,包括对以前学过程序的重新分析和理解、提取所需的资料、对教材中的知识的总结、对未知知识的学习。遇到问题时通过上网查询资料与同学交流或通过医学知识使用笨拙的方法解决问题。刚刚得到这份课题是我没有任何准备,但是随着时间的推进在我的脑海中逐渐形成了程序模型如上面5.2中的程序结构。通过这次课程设计增加了我对解决问题过程的思考、增加了我对程序调试能力的思考、增加了我对面向对象程序设计这门课程的思考。参考文献1 万军,少京,王松波等.Java6程序设计实践教程, :清华大学,2009.5 2 XX文库:wenku.baidu./view/edd35e1414791711cc7917c1.html 成绩评定成绩 教师签字

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1