#include <stdio.h>#include <string.h>#define M 4int add(int a, int b);
intsub(int a, int b);int mul(int a, int b);
int div(int a, int b);
int (*oper_func[])(int, int) = {
add, sub, mul, div
};
char oper_sequence[M][10] = {
"add", "sub", "mul", "div"
};
int main()
{
char oper[10];
int seq;
int a,b;
int result;
int i;
printf("Operator:");
scanf("%s",oper);
printf("a:");
scanf("%d",&a);
printf("b:");
scanf("%d",&b);
for(i=0; i<M; i++)
{
if(strncmp(oper_sequence[i], oper, 3) == 0)
seq = i;
}
result = oper_func[seq](a, b);
printf("result is %d/n", result);
return0;
}
int add(int a, int b)
{
return a+b;
}
intsub(int a, int b)
{return a-b;
}
int mul(int a, int b)
{
return a*b;
}
int div(int a, int b)
{
return a/b;
}
( ̄△ ̄;)这玩意感觉用处不大啊