#include<stdio.h>
//做一个简单胡计算器 + - * / %
//加法
int add(int a, int b)
{
return a + b;
}
//减法
int sub(int a, int b)
{
return a - b;
}
//乘法
int multi(int a, int b)
{
return a * b;
}
//除法
int divv(int a, int b)
{
if (b==0)
{
printf("除数不能为0");
return -1;
}
return a / b;
}
//取模
int mod(int a, int b)
{
return a % b;
}
int error(int a, int b)
{
printf("你的输入有误,请重新输入\n");
return -1;
}
//取别名 函数指针类型
typedef int (*PFun)(int, int); //PFun
//定义一个函数根据不同的操作调用不同函数
int operate(int a, int b, char symbol)//a b 操作数 symbol操作符
{
PFun fun = NULL;
switch (symbol)
{
case'+':
fun = add;
break;
case'-':
fun = sub;
break;
case'*':
fun = multi;
break;
case'/':
fun = divv;
break;
case'%':
fun = mod;
break;
default:
fun = error;
break;
}
return fun(a, b);
}
int main()
{
//int(*pfun)(int, int)=NULL;//函数指针的定义太长
//pfun = add;
/*PFun padd = add;
printf("加法:%d\n", padd(6, 3));*/
int a, b;
char c;
scanf_s("%d %c %d", &a, &c,1,&b);
int ret = operate(a, b, c);
printf("%d\n", ret);
return 0;
}