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第 ...
随机推荐
- spring gateway 截取response 长度缺失
网上找到一段获取修改response的代码:https://blog.csdn.net/tianyaleixiaowu/article/details/83618037 代码如下: import or ...
- F3D模式规则详解
F3D有两个版本,长期版还有短期版 长期版规则 1.购买时候分配 第一队 20% to 奖金池, 56%分给所有人, 30% 持有p3d的人第二队 35% to 奖金池, 43%分给所有人, 8% 持 ...
- 第四百一十五节,python常用排序算法学习
第四百一十五节,python常用排序算法学习 常用排序 名称 复杂度 说明 备注 冒泡排序Bubble Sort O(N*N) 将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮 ...
- python程序打包成.exe
安装pyinstaller 方法一:使用pip install pyinstaller 方法二:如果是下载github上的包之后手动安装 包下载 亲测可用:Pyinstaller下载地址,GitHub ...
- React Native Android原生模块开发实战|教程|心得|怎样创建React Native Android原生模块
尊重版权,未经授权不得转载 本文出自:贾鹏辉的技术博客(http://blog.csdn.net/fengyuzhengfan/article/details/54691503) 告诉大家一个好消息. ...
- The processing instruction target matching "[xX][mM][lL]" is not allowed.
现象: ERROR : The processing instruction target matching "[xX][mM][lL]" is not allowed. 异 ...
- 卸载ie
今天卸载ie11失败,最后使用下面这个命令实现了卸载,记录下 IE11卸载命令如下: FORFILES /P %WINDIR%\servicing\Packages /M Microsoft-Wind ...
- dede后台目录暴力猜解仅限于windows
#!/usr/bin/env python '''/* * author = Mochazz * team = 红日安全团队 * env = pyton3 * */ ''' import reques ...
- CF2A Winner
题目描述: 在 Berland 流行着纸牌游戏 “Berlogging” ,这个游戏的赢家是根据以下规则确定的:在每一轮中,玩家获得或失去一定数量的分数,在游戏过程中,分数被记录在“名称和得分”行中, ...
- 三、CSS语言
CSS语言 1.概述:CSS (Cascading Style Sheets)是层叠样式表用来定义网页的显示效果.可以解决html代码对样式定义的重复,提高了后期样式代码的可维护性,并增强了网页的显示 ...