项目要求:
每次运行程序时计算机随机生成10道题目,每题1。序每次显示一道题目,要求用户输入答案。10道题目全部完成后,程序再显示全部题目,标准答案和用户的答案,并给出得分。10道题目和答案的显示应该对齐。
主类的类名必须是ArithmeticTest1,源程序文件名必须是ArithmeticTest1.java。运算类型以及参与运算的数据位数由命令行参数指定,运算类型用“+,-,X,/”分别表示“加减乘除”。运算类型为“r”则随机生成运算符。如:
用下述命令运行程序,则表示做加法,加数和被加数都是1位整数。
Java ArithmeticTest1 + 1
用下述命令运行程序,则表示做除法,除数和被除数都是2位以内的整数。
Java ArithmeticTest1 / 2
减法运算时,确保生成的题目被减数大于减数。
除法运算时,确保除数大于0,答案包括商和余数两部分。
完成该项目所需运用的知识点:
1.Java程序的基本结构
2.import语句的使用(java.util.Random),Java中随机数的产生方法。或java.lang.Math类的使用。
3.循环,分支语句的使用。
4.命令行参数的使用。
5.实现用键盘输入数据的方法。将字符串转换为基本数据类型(int)的方法。
6.数组的使用,字符串的使用。
7.自学格式输出方法printf( )以及格式串的使用。
提示:
//实例化随机数发生器
Random numberGenerator=new Random(new Date().getTime());
//将第一个命令行参数(类型为字符串)转换为整数
numberOfDigit=Integer.parseInt(args[1]);
//产生一个指定位数以内的随机整数
number1=numberGenerator.nextInt((int)Math.pow(10,numberOfDigit));
//实例化键盘输入对象
BufferedReader keyboardIn = new BufferedReader(new InputStreamReader(System.in));
//从键盘输入整数保存在变量answer中
answer=Integer.parseInt(keyboardIn.readLine());
//使用上述输入方法时,main方法的写法
public static void main(String [] args) throws Exception
//格式输出的用法示例
String formatString="%1$"+numberOfDigit+"d"+OPERATION_STR[questionAnswer[i][1]] +"%2$"+numberOfDigit+"d = %3$"+(numberOfDigit+2)+"d %4$"+(numberOfDigit+2)+"d\n";
System.out.printf(formatString,questionAnswer[i][0],questionAnswer[i][2],questionAnswer[i][3],questionAnswer[i][5]);
你这一贴一大坨,应该没什么人会回答。