代码的要求是:在控制台上输入两个数以及运算符(+-*/%),使用switch语句并用函数封装
代码如下:
import java.util.Scanner;
public class Work6{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.print("请输入第一个数字:");
int num1 = in.nextInt();
System.out.print("请输入第二个数字:");
int num2 = in.nextInt();
System.out.print("请输入运算符:");
String symbol = in.next();
int add = add(num1,num2);
int decrease = decrease(num1 , num2);
int multiply = multiply(num1 , num2);
double division = division(num1 , num2);
double remainder = remainder(num1 , num2);
switch (symbol)
{
case "+":
System.out.println(add);
break;
case "-":
System.out.println(decrease);
break;
case "*":
System.out.println(multiply);
break;
case "/":
System.out.println(division);
break;
case "%":
System.out.println(remainder);
break;
default:
System.out.println("该算法不支持");
break;
}
}
//定义函数,表示运算关系
//加法函数
public static int add(int x,int y){
System.out.println(x + " + " + y + " = " + (x + y));
return x + y ;
}
//减法函数
public static int decrease(int x,int y){
System.out.println(x + " - " + y + " = " + (x - y));
return x - y;
}
//乘法函数
public static int multiply(int x,int y){
System.out.println(x + " * " + y + " = " + (x * y));
return x * y;
}
//除法函数
public static double division(double x,double y){
System.out.println(x + " / " + y + " = " + (x / y));
return x / y;
}
//求余函数
public static double remainder(double x,double y){
System.out.println(x + " % " + y + " = " + (x % y));
return x % y;
}
}
输入两个数及运算符之后,发现所有的运算方法全都输出了,这里我只希望它输出对应运算符的语句,想知道是因为函数中的return和switch中的break冲突了吗?