源代码:

import java.*;
import java.util.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.util.Scanner;
import java.util.Random;
public class SS {
Scanner input=new Scanner(System.in);
public String getRandomString() {//length表示生成字符串的长度
int length=1;
String base = "+-*/"; //生成字符串从此序列中取
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++)
{
int number = random.nextInt(base.length());
sb.append(base.charAt(number));
}
return sb.toString();
}
public static void main (String[] args)throws IOException
{
FileOutputStream fs = new FileOutputStream(new File("TEST.txt"));
PrintStream p = new PrintStream(fs);
FileInputStream fip = new FileInputStream("TEST.txt");
InputStreamReader reader = new InputStreamReader(fip, "UTF-8");
System.out.println("请输入你要生成的题目数量:");
Scanner input=new Scanner(System.in);
Random random = new Random();
int a=input.nextInt();//输入四则运算的题目数量
SS b=new SS();
int sum;
int count=0;
double[] x=new double[a];
for(int i=0;i<a;i++) {
if(i%4==0) { int m=random.nextInt(10)+1;
int n=random.nextInt(20)+1;
sum=n+m;
p.print( n);
p.print("+");
p.print( m);
p.print("=&");
p.append("\r\n");
x[i]=sum;
}
if(i%4==1) { int m=random.nextInt(10)+1;
int n=random.nextInt(20)+10;
sum=n-m;
p.print(n);
p.print("-");
p.print( m);
p.print("=&");
p.append("\r\n");
x[i]=sum;
}
if(i%4==2) { int m=random.nextInt(10)+1;
int n=random.nextInt(20)+10;
sum=n/m;
p.print( n);
p.print("/");
p.print( m);
p.print("=&");
p.append("\r\n");
x[i]=sum;
}
if(i%4==3) {
int m=random.nextInt(9)+1;
int n=random.nextInt(9)+1;
sum=n*m;
p.print( n);
p.print("*");
p.print( m);
p.print("=&");
p.append("\r\n");
x[i]=sum;
}
}
p.close();
int ch;
double sum1;
int j;
for(j=0;j<a;j++)
{
while ((ch = reader.read())!= '&')
{
System.out.print((char)ch);
}
sum1=input.nextDouble();
if(sum1==x[j])
{
System.out.println("true!");
count++;
}
else
{
System.out.println("flase!");
}
}
System.out.println("您的总分是:"+count);
reader.close();
}
}

运行结果:

此次测试自己没能在规定时间里完成,主要的障碍出现在随机产生运算符的方面以及将运算结果输入到文件当中,当解决了输入时又不能将结果从文件中输出到dos界面。在构造方法没能一个一个层次地去进行。以至于将所有框架弄到了一个方法中。使得程序过于杂乱,出现错误时修改了很多部分已没有改好。自己在理清构造方法关系方面的能力较薄弱。

11.14java课堂测试的更多相关文章

  1. 耿丹CS16-2班课堂测试作业汇总

    Deadline: 2016-11-01 11:59 作业内容 课堂测试作业总结 00.题目得5分,多半扣在格式上,有些同学代码写得很过分,已经很仁慈对待,同学们珍惜之: 01.界面设计得分不好,换行 ...

  2. 课堂测试ch06

    课堂测试ch06 下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为(D) A. 1 B. 1/4 C. 1/2 D. 3/4 解析:在填充了之后,对于x和y数组,只有在引用 ...

  3. 20172306 2018-2019《Java程序设计与数据结构课堂测试补充报告》

    学号 2017-2018-2 <程序设计与数据结构>课堂测试补充报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 刘辰 学号:20172306 实验教师:王志强 必 ...

  4. 2017-2018-1 20155208 课堂测试(ch06)(补做)

    2017-2018-1 20155208 课堂测试(ch06)(补做) 1.( 多选题 | 1 分) 下面说法正确的是(ABC) A . 存储层次结构中最小的缓存是寄存器 B . 存储层次结构的中心思 ...

  5. 20155217 《信息安全系统设计基础》week16课堂测试

    20155217 <信息安全系统设计基础>week16课堂测试 在作业本上完成附图作业,要认真看题目要求并提交作业截图. 在set的过程中,我们需要将hour部分进行赋值,赋值我们采用&q ...

  6. # 课堂测试(CH6)20155218

    课堂测试(CH6) 1. 下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为(D) A . 1 B . 1/4 C . 1/2 D . 3/4 解析:在x[0],y[0]时发 ...

  7. 20155222卢梓杰 课堂测试ch06补做

    20155222卢梓杰 课堂测试ch06补做 1.下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为() A . 1 B . 1/4 C . 1/2 D . 3/4 正确答案 ...

  8. 2017-2018-1 20155231 课堂测试 (ch06)

    2017-2018-1 20155231 课堂测试 (ch06) 1 (单选题|1分) 下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为(D) A .1 B .1/4 C ...

  9. 2017-2018-1 20155232 《信息安全系统设计基础》第十周课堂测试(ch06)补交

    # 2017-2018-1 20155232 <信息安全系统设计基础>第十周课堂测试(ch06)补交 上课时完成测试后在提交的时候,没有提交成功,进行补交. 1.下面代码中,对数组x填充后 ...

随机推荐

  1. LeetCode 5. Longest Palindromic Substring & 回文字符串

    Longest Palindromic Substring 回文这种简单的问题,在C里面印象很深啊.希望能一次过. 写的时候才想到有两种情况: 454(奇数位) 4554(偶数位) 第1次提交 cla ...

  2. PHP中json_encode()问题

    PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 要想不转义,在后面加个参数即可 json_encode($data, JSON_UNESCAPED_UNICODE);  ...

  3. mvn install 打包

    mvn install 打包的时候 特别注意下.文档注释. 如果接口上面有这样的注释. mvn install 安装的时候是会报错的. 会有类似的提示. 完整命令: mvn clean install ...

  4. redis的键命令

    键的命令 查找键,参数支持正则 KEYS pattern 判断键是否存在,如果存在返回1,不存在返回0 EXISTS key [key ...] 查看键对应的value的类型 TYPE key 删除键 ...

  5. raw格式和qcow2格式

    Raw: "raw" 镜像格式是最最简单的,并且是被 KVM 和 Xen 原生支持的格式,你 可以想象裸格式镜像和块设备文件是二进制位相当的,就好像从块设备拷 贝过来的,比方说,使 ...

  6. git代理设置

    git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https://127.0.0. ...

  7. PathUtil

    public String getParentPath(final String originalPath) { boolean isSplitRequired = true; int lastSla ...

  8. 1.正则re

    正则 :规则表达式 一般在匹配非结构化的数据时用的比较多,结构化的数据一般用xpath,bs4.但具体使用起来都是视情况而定,相对而言.正则规则平时涉及最多也就是匹配邮箱,电话,及特殊字符串.规则相对 ...

  9. 42.纯 CSS 创作一个均衡器 loader 动画

    原文地址: https://segmentfault.com/a/1190000015157160 感想: 不难,最简单的动画.拓展地址: https://scrimba.com/c/cWqVv9hd ...

  10. Angular.js实现分页

    一.编写angularJS实现的分页js(网上搜)和样式表(pagination),并在页面引入 二.编写变量和方法 //分页控件控制 $scope.paginationConf={ currentP ...