Java实验项目二——小学生考试系统(简单四则运算)

Program:设计实现一个小学生数学考试系统,完成随机出题(简单的四则运算),学生答题,自动判分的功能。

Description:代码如下:

 1 /*
 2  * Description:面向考试系统建立类TestSystem
 3  *
 4  * */
 5
 6 package entity;
 7
 8 public class TestSystem {
 9
10     private int num1;            //声明两个操作数
11     private int num2;
12     private String operateEle;        //声明操作符
13     private static int grade = 0;        //记录最后得分
14
15     //定义无参构造方法
16     public TestSystem() {
17
18     }
19
20     //定义带参数的构造方法
21     public TestSystem(int num1,int num2,String operateEle) {
22
23         this.num1 = num1;
24         this.num2 = num2;
25         this.operateEle = operateEle;
26     }
27
28     //设置setter()和getter()方法
29     public int getNum1() {
30         return num1;
31     }
32
33     public void setNum1(int num1) {
34         this.num1 = num1;
35     }
36
37     public int getNum2() {
38         return num2;
39     }
40
41     public void setNum2(int num2) {
42         this.num2 = num2;
43     }
44
45     //覆写toString()方法
46     public String toString() {
47
48         return this.num1 + this.operateEle + this.num2;
49     }
50
51     //取得表达式的正确结果
52     public int getResult() {
53
54         int result = 0;
55         switch(this.operateEle) {
56
57             case "+": result = this.num1 + this.num2;break;
58
59             case "-": result =  this.num1 - this.num2;break;
60
61             case "*": result =  this.num1 * this.num2;break;
62
63             case "/": result =  this.num1 / this.num2;break;
64         }
65
66         return result;
67     }
68
69     //向屏幕输出总成绩
70     public static void getGrade() {
71
72         System.out.println( "考试结束,最后成绩为:" + TestSystem.grade );
73     }
74
75     //答对问题,将对应的成绩加入总成绩
76     public static void setGrade(int grade) {
77
78         TestSystem.grade += grade;
79     }
80
81     //将总成绩清零
82     public static void clear() {
83
84         TestSystem.grade = 0;
85     }
86
87
88 }
 1 /*
 2  * Description:定义类Operate,用于获取随机操作数和操作符
 3  *
 4  * */
 5
 6
 7 package tools;
 8
 9 import java.util.Random;
10 import java.util.Scanner;
11
12 public class Operate {
13
14     //定义方法,返回一个100以内的随机数
15     public static int getRandom() {
16
17         Random ran = new Random();
18
19         return ran.nextInt(100);
20     }
21
22     //定义方法,返回操作符
23     public static String getOperateEle() {
24
25         String[] operateEle = {"+","-","*","/"};
26         Random ran = new Random();
27
28         return operateEle[ran.nextInt(4)];
29     }
30
31
32     //定义方法,取得用户输入的结果
33     public static int getInput() {
34
35         Scanner scan = new Scanner(System.in);        //实例化Scanner对象
36         int result = 0;
37
38         System.out.println( "请输入结果:" );
39         result = scan.nextInt();
40         return result;
41
42     }
43
44
45 }
 1 /*
 2  * Description:小学简单四则运算,系统随即出题,每题20分
 3  *
 4  * Written By:Cai
 5  *
 6  * Date Written:2017-09-25
 7  *
 8  * */
 9
10 package main;
11
12 import tools.Operate;        //导入自定义的两个类
13 import entity.TestSystem;
14
15 public class DemoTwo4 {
16
17     public static void main(String args[]) {
18
19         int i = 0;        //记录答题个数
20         int inputResult = 0;        //接收用户输入的结果
21         do {
22             //实例化TestSystem类型对象
23             TestSystem ts = new TestSystem(Operate.getRandom(),Operate.getRandom(),Operate.getOperateEle());
24             System.out.println(ts);                    //输出表达式
25             inputResult = Operate.getInput();        //用户输入
26             if( inputResult == ts.getResult() ) {    //回答正确,加上对应的分值分
27
28                 System.out.println( "回答正确!" );
29                 TestSystem.setGrade(20);
30             }else {                                    //回答错误
31
32                 System.out.println( "回答错误!" );
33             }
34             i++;
35
36         }while(i < 5);                                //一共五道题(方便验证)
37
38         TestSystem.getGrade();                        //打印最后结果
39         TestSystem.clear();                        //总成绩清零
40
41     }
42 }
时间: 2024-11-06 09:28:59

Java实验项目二——小学生考试系统(简单四则运算)的相关文章

Java实验项目二打印万年历

package _____;import java.util.Scanner;public class wnl//万年历主类{    public static void main(String[] args)    {                menu();        Scanner sc=new Scanner(System.in);        int menu=sc.nextInt();        if(menu==1)        {            Syste

Java实验项目二——打印某年某月日历

Program:打印万年历(输入年份,月份,输出该月的日历,已知1900年1月1日是星期一), 要 求: (1)编写一个方法判断闰年: (2)编写一个方法判断某年某月有多少天: (3)编写一个方法计算某年某月前距离1900年1月1日的总天数:(4)编写一个输出某年某月日历的方法: (5)编写一个测试方法. Description:该项目由多个类实现,最后类为main方法的调用.代码如下: 1 /* 2 *Description:定义工具类 3 * 4 * */ 5 6 package tools

Java实验项目二——二维数组实现九九乘法表

Program:打印乘法口诀表 (1)编写一个方法,参数(二维数组),完成将二维数组中的数据按照行列显示的工作. (2)编写一个测试方法,给出99乘法表,放入到二维数组中,调用(1)中的方法,显示乘法口诀表. Description:main方法所在类在最后给出,代码如下: 1 /* 2 *Description:定义工具类,负责初始化二维数组和打印二维数组 3 * 4 * */ 5 6 package tools; 7 8 9 public class Operate { 10 11 //初始

Java实验报告二:Java面向对象程序设计

Java实验报告二:Java面向对象程序设计                                                                                                      实验要求: 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 实验内容 (一)单元测试 (二)面向对象三要素 (三)设计模式初步 (四)练习

Java小项目之:投票系统

Java小项目之:投票系统今天给大家带来的是java编写的投票小系统,代码简易,适合初学者练手!代码展示:package com.tarena.wgh.servlet; import java.io.IOException;import java.io.PrintWriter;import java.util.*; import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.serv

Java实验报告二

北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计实验   班级:1353  姓名:符运锦  学号:20135323 成绩:                           指导教师:娄嘉鹏      实验日期:2015.5.8 实验密级:无            预习程度:                   实验时间:15:30~18:00 仪器组次:  23                    必修/选修: 选修              

java实验项目报告

        JAVA课程项目报告   题目:利用java实现一个时钟的小程序 姓名:王国梁 班级:计科13-2 学号:201303011200         利用JAVA实现一个时钟的小程序 1. 软件开发的需求分析 在当今的信息时代,时钟已经成为人们生活中必不可少的应用工具 ,Java语言是当今流行的网络编程语言,它具有面向对象.与平台无关.安全.多线程 等特点.使用Java语言不仅可以实现大型企业级的分布式应用系统,还能够为小型的.嵌入 式设备进行应用程序的开发.面向对象的开发方法是当

Java实验项目三——简单工厂模式

Program: 请采用采用简单工厂设计模式,为某个汽车销售店设计汽车销售系统,接口car至少有方法print(), 三个汽车类:宝马.奥迪.大众 (属性:品牌,价格),在测试类中根据客户要求购买的汽车品牌, 通过接口car为客户提供相应的汽车对象. Description:通过java反射机制和Properties类的结合使用,实现工厂模式.代码如下: 1.首先是entity包中的一个接口和三个实体类 汽车接口: 1 /* 2 *Description:定义汽车接口 3 * */ 4 5 6

C++程设实验项目二:用正则表达式制作一个简易的SQL系统

本文将尽可能简单地概括如何搭起这个SQL系统的框架. 一.正则表达式分析语句 首先需要使用c++的regex库: #include <regex> 推荐到菜鸟教程上了解正则表达式的最基础语法. 然后,新建一个表达式.假定现在要分析的语句是CREATE TABLE (col1,col2,...) TO filename regex r("CREATE TABLE \\((.+)\\) TO ([^ ]+)"); 注意,在c++中还要转义一次反斜杠,所以一般的像\w, \(这样