小学生出题系统(文件输入输出)

//信1705-2   20173629    何伟豪
package 小学计算题文件;

import java.util.Random;   //随机生成数字的头文件
import java.util.Scanner;  //输入整型数据的头文件
import java.io.*;
import java.io.BufferedReader;
import java.io.FileReader;

public class JiSuanWenJian {
    public static void main(String args[]) throws IOException{
        FileOutputStream fos = new FileOutputStream("heweihao.txt");
        Scanner scanner = new Scanner(new BufferedReader(new FileReader("heweihao.txt")));
        PrintStream ps = null;
        scanner.useDelimiter("[|]");
        ps = new PrintStream(fos);
        Scanner cin=new Scanner(System.in);
        Random random = new Random();
        int q = 0;
        double sum[] = null;
        sum = new double[30];
        for(int i=0;i<30;i++)    //输出30个数的循环   开始1
        {
            int a=random.nextInt(101);            //随机生成100以内的一个数
            int b=random.nextInt(101);            //再随机生成100以内的一个数
            ps.print(a);                          
            int tatted;                           //存储代表运算符的数
            tatted=random.nextInt(3);             //随机生成代表运算符的数
            if(tatted==0) {                       //将代表运算符的数转化为运算符   开始2
                ps.print("+");
                sum[q]=a+b;
            }else if(tatted==1) {
                ps.print("-");
                sum[q]=a-b;
            }else if(tatted==2) {
                ps.print("*");
                sum[q]=a*b;
            }else if(tatted==3) {
                ps.print("/");
                sum[q]=a/b;
            }                                     //数转化为运算符   结束2
            ps.print(b);//输出b
            ps.print("=");                //输出等于号
            q++;
            if(i<29) {
                ps.println("|");
            }
        }     //输出30个数的循环   结束1
        q=0;
        double sum1;
        int fenshu=0;
        while (scanner.hasNext()) {   //读取文件中的指定内容
            System.out.println(scanner.next());
            System.out.println("请输入答案");
            sum1=cin.nextDouble();
            if(sum1==sum[q]) {
                System.out.println("答案正确");
                fenshu++;
            }else {
                System.out.println("答案错误");
            }
            q++;
        }
        System.out.println("总分数为:" + fenshu);
        cin.close();
        ps.close();
        scanner.close();
    }
}

//信1705-2   20173629    何伟豪package 小学计算题文件;
import java.util.Random;   //随机生成数字的头文件import java.util.Scanner;  //输入整型数据的头文件import java.io.*;import java.io.BufferedReader;import java.io.FileReader;
public class JiSuanWenJian {public static void main(String args[]) throws IOException{FileOutputStream fos = new FileOutputStream("heweihao.txt");Scanner scanner = new Scanner(new BufferedReader(new FileReader("heweihao.txt")));PrintStream ps = null;scanner.useDelimiter("[|]");ps = new PrintStream(fos);Scanner cin=new Scanner(System.in);Random random = new Random();int q = 0;double sum[] = null;sum = new double[30];for(int i=0;i<30;i++)    //输出30个数的循环   开始1{int a=random.nextInt(101);            //随机生成100以内的一个数int b=random.nextInt(101);            //再随机生成100以内的一个数ps.print(a);                          int tatted;                           //存储代表运算符的数tatted=random.nextInt(3);             //随机生成代表运算符的数if(tatted==0) {                       //将代表运算符的数转化为运算符   开始2ps.print("+");sum[q]=a+b;}else if(tatted==1) {ps.print("-");sum[q]=a-b;}else if(tatted==2) {ps.print("*");sum[q]=a*b;}else if(tatted==3) {ps.print("/");sum[q]=a/b;}                                     //数转化为运算符   结束2ps.print(b);//输出bps.print("=");                //输出等于号q++;if(i<29) {ps.println("|");}}     //输出30个数的循环   结束1q=0;double sum1;int fenshu=0;while (scanner.hasNext()) {   //读取文件中的指定内容System.out.println(scanner.next());System.out.println("请输入答案");sum1=cin.nextDouble();if(sum1==sum[q]) {System.out.println("答案正确");fenshu++;}else {System.out.println("答案错误");}q++;}System.out.println("总分数为:" + fenshu);cin.close();ps.close();scanner.close();}}




猜你喜欢

转载自www.cnblogs.com/hwh000/p/9966491.html
今日推荐