RT,没有任何技术含量。
和C++标准库里的不同,JAVA的 math.random() : double , 0<= random() <1 .
import java.util.Scanner; public class HW { enum operator {add,sub,mtp,div}; public static void main(String[] args) { //auto score int op1,op2,result=0;//Operands operator oprt=operator.add; String prmpt=""; op1=(int)(Math.random()*10); op2=(int)(Math.random()*9)+1; switch( (int)(Math.random()*4) ){ case 0: oprt=operator.add; prmpt=" + "; result=op1+op2; break; case 1: oprt=operator.sub; prmpt=" - "; result=op1-op2; break; case 2: oprt=operator.mtp; prmpt=" * "; result=op1*op2; break; case 3: oprt=operator.div; prmpt=" / "; op1=op1/op2*op2; result=op1/op2; break; } System.out.println(op1 + prmpt + op2 + " = ?"); Scanner userIn = new Scanner(System.in); if(userIn.nextInt()==result){ System.out.println("Right."); } else{ System.out.println("Wrong."); } } }