c语音使用指针写出实现计算器的代码
时间: 2023-12-14 07:37:07 浏览: 25
以下是一个简单的计算器代码,使用指针实现:
```c
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int subtract(int a, int b) {
return a - b;
}
int multiply(int a, int b) {
return a * b;
}
int divide(int a, int b) {
if (b == 0) {
printf("Error: Division by zero!\n");
return 0;
}
return a / b;
}
int main() {
int num1, num2, result;
char op;
int (*operation)(int, int); // 定义函数指针
printf("Enter an equation: ");
scanf("%d %c %d", &num1, &op, &num2);
switch (op) {
case '+':
operation = add; // 将函数指针指向加法函数
break;
case '-':
operation = subtract; // 将函数指针指向减法函数
break;
case '*':
operation = multiply; // 将函数指针指向乘法函数
break;
case '/':
operation = divide; // 将函数指针指向除法函数
break;
default:
printf("Invalid operator!\n");
return 0;
}
result = (*operation)(num1, num2); // 通过函数指针调用相应的函数
printf("The result is: %d\n", result);
return 0;
}
```
在上面的代码中,我们定义了四个函数:`add`、`subtract`、`multiply`和`divide`,分别实现加法、减法、乘法和除法运算。然后定义了一个函数指针`operation`,用于指向具体的运算函数。在用户输入运算符后,根据不同的运算符,将函数指针指向相应的运算函数,然后通过`(*operation)(num1, num2)`调用指向的函数,得到计算结果。最后输出结果即可。