编写程序实现功能:读入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可以是+、—、*、/ 四个符号中的任一种(用switch语句实现)。
时间: 2023-08-31 12:26:44 浏览: 159
### 回答1:
下是一个示例代码:
```c
#include <stdio.h>
int main() {
float data1, data2, result;
char op;
printf("请输入两个运算数和运算符(如 1.2 + 3.4):");
scanf("%f %c %f", &data1, &op, &data2);
switch(op) {
case '+':
result = data1 + data2;
break;
case '-':
result = data1 - data2;
break;
case '*':
result = data1 * data2;
break;
case '/':
if (data2 == 0) {
printf("除数不能为0!\n");
return -1;
}
result = data1 / data2;
break;
default:
printf("无效的运算符!\n");
return -1;
}
printf("%.2f %c %.2f = %.2f\n", data1, op, data2, result);
return 0;
}
```
运行效果如下:
```
请输入两个运算数和运算符(如 1.2 + 3.4):5.6 * 7.8
5.60 * 7.80 = 43.68
```
### 回答2:
可以使用以下程序来实现该功能:
```java
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 读取输入数据
System.out.print("请输入第一个运算数:");
double data1 = input.nextDouble();
System.out.print("请输入第二个运算数:");
double data2 = input.nextDouble();
System.out.print("请输入运算符(+、-、*、/):");
char op = input.next().charAt(0);
double result = 0.0;
// 使用switch语句计算结果
switch(op) {
case '+':
result = data1 + data2;
break;
case '-':
result = data1 - data2;
break;
case '*':
result = data1 * data2;
break;
case '/':
result = data1 / data2;
break;
default:
System.out.println("无效的运算符!");
return;
}
System.out.println("结果:" + result);
}
}
```
此程序首先读取两个运算数(`data1`和`data2`),然后接收一个运算符(`op`)。使用`switch`语句将该运算符与四个符号进行比较,根据运算符进行计算,并将结果存储在`result`变量中。最后输出计算结果。如果输入的运算符不是四个符号中的任意一种,程序将输出“无效的运算符!”。
以上是通过Java编写的程序来实现该功能,您可以在命令行界面输入数据并查看计算结果。如果您使用其他编程语言,可以根据类似的逻辑进行相应的修改。
### 回答3:
您好!要实现这个功能,可以按照以下步骤进行编写:
1. 首先,定义三个变量data1、data2和op,用于存储输入的两个运算数和一个运算符。
2. 使用scanf函数读取用户输入的data1、data2和op的值。
3. 创建一个结果变量result,用于存储计算后的结果。
4. 使用switch语句根据op的值,选择相应的运算符进行计算,然后将结果存储在result变量中。
- 当op为"+"时,执行data1 + data2的操作。
- 当op为"-"时,执行data1 - data2的操作。
- 当op为"*"时,执行data1 * data2的操作。
- 当op为"/"时,执行data1 / data2的操作。
5. 最后,输出结果result。
下面是一个示例代码:
```c
#include <stdio.h>
int main() {
double data1, data2;
char op;
double result;
printf("请输入两个运算数和一个运算符: ");
scanf("%lf%c%lf", &data1, &op, &data2);
switch(op) {
case '+':
result = data1 + data2;
break;
case '-':
result = data1 - data2;
break;
case '*':
result = data1 * data2;
break;
case '/':
result = data1 / data2;
break;
default:
printf("输入的运算符有误!\n");
return 0;
}
printf("计算结果为: %.2lf\n", result);
return 0;
}
```
希望能对您有所帮助!如果有任何问题,请随时询问。
阅读全文