代码

package sizeyunsuan;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Random;
import java.util.Scanner;
public class SiZe {
@SuppressWarnings("unused")
public static void main(String[] args) throws FileNotFoundException {
String[] operate = new String[] { "+", "-", "*", "/" };//定义运算符数组
int[] numbers = new int[100];//定义数字部分数组
for (int i = 1; i <= 100; i++) {
numbers[i - 1] = i;
}
Random rand = new Random();//定义随机数
@SuppressWarnings("resource")
Scanner in = new Scanner( System.in );
String fiilename ="d:/shuchu.txt";
int operand1 = 0 ;
int operand2 = 0;
int operator;
int result;
int count=0; //统计正确的题目数量
int i;
duqu[] cal = new duqu[100]; //30道题目 //随机题目并显示序号与题目
for( i=0; i<100; i++ ){
operator = rand.nextInt(4)+1; switch( operator ){
case 1:
operand1 = rand.nextInt(100);
operand2 = rand.nextInt(100);
break;
case 2: //减法不出现负数
operand1 = rand.nextInt(100);
operand2 = rand.nextInt( operand1 );
break;
case 3: //乘除范围更小
operand1 = rand.nextInt(10);
operand2 = rand.nextInt(10);
break;
case 4:
operand2 = rand.nextInt(9)+1;
operand1 = rand.nextInt(81-operand2)+operand2;
break;
} System.out.print( (i+1) +" ");
cal[i] = new duqu( operand1, operator, operand2);
cal[i].manager();
if(i==0)
duqu.flushFile(fiilename);
duqu.OutputFile(fiilename,cal[i]);
PrintStream out=System.out; }
}
}
package sizeyunsuan;

import java.io.*;
public class duqu { private int operator; //操作数
private int operand1; //操作数前面的数
private int operand2; //操作数后面的书
private int result; //运算结果,除法结果取整数部分
private int statistics; //统计正误
private String str; //记录题目 public int getResult(){
return result;
} public int getStatistics(){
return statistics;
} public duqu( int operand1 , int operator , int operand2 ){
this.operand1 = operand1;
this.operator = operator;
this.operand2 = operand2;
} public void manager(){
switch(operator){
case 1:
str = operand1 +" + " + operand2 +" = ";
result = operand1 + operand2;
break;
case 2:
str = operand1 +" - " + operand2 +" = ";
result = operand1 - operand2;
break;
case 3:
str = operand1 +" * " + operand2 +" = ";
result = operand1 * operand2;
break;
case 4:
str = operand1 +" / " + operand2 +" = ";
result = operand1 / operand2;
break;
}
System.out.println(str);
} public void judge( int result ){ //判断正误
if( this.result == result){
statistics = 1; //正确为1
}
else
statistics = 0; //错误为0
} public static void OutputFile(String filename,duqu cal){
@SuppressWarnings("unused")
File file = new File(filename);
FileWriter fw = null;
try {
fw = new FileWriter(filename,true);
} catch (IOException e) {
e.printStackTrace();
}
PrintWriter p = new PrintWriter(fw);
p.println(cal.str);
p.close();
try {
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
} public static void flushFile(String filename){
File file = new File(filename);
FileWriter fw;
try {
fw = new FileWriter(file);
fw.write("");
fw.flush();
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }

于下午四点四十完成

总结:主要自己对于缓冲流导入文本文件夹,输出文本文件夹,不太理解,一直困于此处,对于四则运算的正误判断也有些许的疑问,然后通过百度查阅,以及询问同学弄懂了自己不是很会的地方,感觉自己在这次课堂测验上学到了很多

Java第二次考试的更多相关文章

  1. 2018-03-11 20165235 祁瑛 Java第二周考试总结

    20165235 祁瑛 Java第二周考试总结 课后习题p16 代码编写 class Person { void speakHello (){ System.out.print("nin h ...

  2. 20165235 祁瑛 Java第四周考试总结

    20165235 祁瑛 Java第四周考试总结 课后习题p29 p45 代码编写 import java.util.*; class Example2_5{ public static void ma ...

  3. JAVA第二次作业展示与学习心得

    JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...

  4. Java第二周作业

    Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...

  5. java第二周的作业

    package java第二周学习; import javax.swing.JOptionPane; public class 数学题 { private int a; private int b; ...

  6. Java 第二次测试总结

    Java 第二次测试总结 1. 相关知识点总结 Java测试题循环与递归知识点 补充知识点: for循环语句:for(表达式1:表达式2:表达式3)表达式一负责完成变量的初始化!表达式2是值为bool ...

  7. “全栈2019”Java第二章:安装JDK11(Windows)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 文章原文链接 "全栈2019"Java第二章:安装JDK11(Windows) 下一 ...

  8. 20155210潘滢昊 Java第二次试验

    20155210潘滢昊 Java第二次试验 实验内容 学会JunitTest的使用 实验代码 MyUtilTest代码: import org.junit.*; import junit.framew ...

  9. “全栈2019”Java第二十九章:数组详解(中篇)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

随机推荐

  1. 物联网系统与CoAP之Hello,World

    物联网系统与CoAP Hello,World 关于CoAP与物联网系统我们在上一篇中(ps:CoAP与物联网系统)中做一个简单的介绍,接着我们便開始试试CoAP协议的应用 CoAP应用 開始之前我们须 ...

  2. hdoj:2086

    A1 = ? Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  3. 四大中三家已面向客户推出机器人业务解决方案?别逗了,先用机器人自我革命吧! post by 上海嘉冰信息技术

    近日,四大会计师事务所推出的机器人财务及业务解决方案的话题引爆朋友圈.鉴于该话题的前沿性以及对财务及业务领域从业人员未来职业发展有巨大的影响,引起热门讨论在所难免.小编先来汇总下目前国际四大会计师事务 ...

  4. [原创]Cadence Allegro小技巧之解决Out of date shapes问题

    Allegro报错“Dynamic shapes are out of date; please update them. Check for out of date shapes in Setup ...

  5. CleanAop使用笔记

    前言,本(ˇˍˇ) 想用PostSharp做case,但是破解不成功,所以在github里找了一个CleanAop 地址: https://github.com/Jarvin-Guan/CleanAO ...

  6. 【Android Studio】Gradle配置及问题解决

    Error:Failed to open zip file.Gradle's dependency cache may be corrupt (this sometimes occurs after ...

  7. JS设计模式——单例模式剖析

    转载于原文地址:https://blog.csdn.net/q1056843325/article/details/52933426 举一个通俗的例子,在页面中点击登录按钮,弹出了一个登录浮窗,这个登 ...

  8. monit官方摘录

    Here are the legal global keywords: Keyword Function ----------------------------------------------- ...

  9. Spring Security http标签的use-expressions="true"属性

    如果声明为true,那么在access属性要用hasRole()这样写: <intercept-url pattern="/secure/extreme/**" access ...

  10. mysql 查询排名 返回值拼接的骚操作

    故事背景: 依照原系统的框子搞一个新的系统给其他人使用,因为新的系统配置库依然需要使用原有的表,表中有字段区分新的系统,然后就有了这个很没劲的数据同步. 难点:配置库码表数据的主键之前是自增,后来改造 ...