Java第二次考试
代码
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第二次考试的更多相关文章
- 2018-03-11 20165235 祁瑛 Java第二周考试总结
20165235 祁瑛 Java第二周考试总结 课后习题p16 代码编写 class Person { void speakHello (){ System.out.print("nin h ...
- 20165235 祁瑛 Java第四周考试总结
20165235 祁瑛 Java第四周考试总结 课后习题p29 p45 代码编写 import java.util.*; class Example2_5{ public static void ma ...
- JAVA第二次作业展示与学习心得
JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...
- Java第二周作业
Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...
- java第二周的作业
package java第二周学习; import javax.swing.JOptionPane; public class 数学题 { private int a; private int b; ...
- Java 第二次测试总结
Java 第二次测试总结 1. 相关知识点总结 Java测试题循环与递归知识点 补充知识点: for循环语句:for(表达式1:表达式2:表达式3)表达式一负责完成变量的初始化!表达式2是值为bool ...
- “全栈2019”Java第二章:安装JDK11(Windows)
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 文章原文链接 "全栈2019"Java第二章:安装JDK11(Windows) 下一 ...
- 20155210潘滢昊 Java第二次试验
20155210潘滢昊 Java第二次试验 实验内容 学会JunitTest的使用 实验代码 MyUtilTest代码: import org.junit.*; import junit.framew ...
- “全栈2019”Java第二十九章:数组详解(中篇)
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- Python 词典增加和删除
增加 dict 里面的属性,必须先初始化 key,然后使用 append 添加值 #!/usr/bin/python3 message = dict() #message = { # "10 ...
- Eclipse Maven profiles 多环境配置,测试环境与开发环境分开打包
1.将开发环境.测试环境.生产环境的配置文件分开存放,如下图: 2.在Maven中配置不同的环境打包配置文件的路径,配置如下: <profiles> <profile> < ...
- sql 同步2个表中的一个字段数据
update PMS.tenant_contract a inner join(select id,home_id from PMS.owner_contract) c on a.id = c.id ...
- 【Excel】输出CSV文本
'******************************************************************************* ' CSV形式テキストファイル書き出す ...
- mysql 字符串 拼接 截取 替换
一. 字符串拼接 concat('asdf',str); 说明: 拼接asdf 和 str 二. 字符串截取 从左开始截取字符串 left(str, length) 说明:) as abstract ...
- [2]朝花夕拾-JAVA注解、PHP注解?
一.Java注解概述 注解,也被称为元数据,为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后某个时刻非常方便地使用这些数据. 注解在一定程度上是把元数据与源代码文件结合在一起,而不是保存 ...
- 134、直接拿来用,Android界最火的开源项目
Android酷炫开源动框架2015-2016双年榜(转载) http://blog.csdn.net/u011200604/article/details/54428128 GitHub上受欢迎的A ...
- PHP 数组转XML 格式
function buildXml( $data, $wrap= 'xml' ){ $str = "<{$wrap}>"; if( is_array( $data ) ...
- js中 变量的解构赋值
es6新特性, 提取数组或对象中的值,按照对应位置, 为变量赋值. let [a, b, c] = [1, 2, 3]; 交换变量的值变得容易 let x = 1; let y = 2; [x, y] ...
- 更改oracle归档模式路径
1.更改归档路径 在ORACLE10G中,默认的归档路径为$ORACLE_BASE/flash_recovery_area.对于这个路径,ORACLE有一个限制,就是默认只能有2G的空间给归档日志使用 ...