用java编写一段程序输入一个计算表达式,写出计算结果。 计算表达式中只有一个运算符,它们是 +、-、*、/ 中的一个。
时间: 2023-08-31 20:43:28 浏览: 78
### 回答1:
可以使用如下 Java 代码来实现:import java.util.Scanner;public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); System.out.println("请输入计算表达式:");
String expression = scanner.nextLine(); int result = 0;
char operator = expression.charAt(1); switch (operator) {
case '+':
result = Integer.parseInt(expression.substring(0, 1)) + Integer.parseInt(expression.substring(2));
break;
case '-':
result = Integer.parseInt(expression.substring(0, 1)) - Integer.parseInt(expression.substring(2));
break;
case '*':
result = Integer.parseInt(expression.substring(0, 1)) * Integer.parseInt(expression.substring(2));
break;
case '/':
result = Integer.parseInt(expression.substring(0, 1)) / Integer.parseInt(expression.substring(2));
break;
} System.out.println("计算结果:" + result);
}
}
### 回答2:
可以通过使用Java中的Scanner类来实现输入计算表达式,然后使用条件语句来判断运算符类型,并进行相应的运算操作。下面是一个示例程序:
```java
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入计算表达式(示例格式:数字 运算符 数字):");
double num1 = scanner.nextDouble();
char operator = scanner.next().charAt(0);
double num2 = scanner.nextDouble();
double result = 0.0;
switch (operator) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
if (num2 == 0) {
System.out.println("除数不能为0!");
return;
}
result = num1 / num2;
break;
default:
System.out.println("无效的运算符!");
return;
}
System.out.println("计算结果:" + result);
}
}
```
这段程序首先使用Scanner类获取用户输入的计算表达式,然后根据输入的运算符进行相应的计算操作,并将结果打印输出。程序还进行了一些特殊情况的处理,如除数为0的情况。
### 回答3:
可以使用Java编写以下程序来实现输入一个计算表达式并输出计算结果:
```java
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个计算表达式(形如:num1 运算符 num2):");
double num1 = scanner.nextDouble();
String operator = scanner.next();
double num2 = scanner.nextDouble();
double result = 0;
switch (operator) {
case "+":
result = num1 + num2;
break;
case "-":
result = num1 - num2;
break;
case "*":
result = num1 * num2;
break;
case "/":
result = num1 / num2;
break;
default:
System.out.println("无效的运算符");
return;
}
System.out.println("计算结果为:" + result);
}
}
```
以上程序首先定义了一个Scanner对象用于接收用户输入。然后提示用户输入一个计算表达式,并通过nextDouble()方法分别接收表达式中的第一个数、运算符和第二个数。接下来使用switch语句根据运算符执行相应的计算,并将结果赋给result变量。最后输出计算结果。在运算符无效的情况下,程序会给出相应提示并结束程序的执行。
用户可以按照以下的格式输入计算表达式:
```
num1 运算符 num2
```
例如输入:`2 + 3`,程序将输出:`计算结果为:5.0`。输入:`3 * 4`,程序将输出:`计算结果为:12.0`。
请注意,以上程序只支持两个数之间的运算,不支持复杂的表达式。同时,由于Java中的浮点数运算存在精度问题,结果可能与预期的稍有出入。
阅读全文