代码:
#include <stdio.h>
int main()
{
int fun1(int,int),fun2(int,int),fun3(int,int),fun4(int,int);
int executefun(
int (*func)(int a,int b),int a,int b
);
int x,y,i;
int (*funcarr[4])(int a,int b);
funcarr[0]=fun1;
funcarr[1]=fun2;
funcarr[2]=fun3;
funcarr[3]=fun4;
scanf("%d",&i);
if(i>=0&&i<=3)
{
scanf("%d%d",&x,&y);
if(i==3 && y==0)
printf("no result.\n");
else
printf("%d\n",executefun(
(*func)(a,b),a,b
));
}else
{
printf("exit\n");
}
return 0;
}
int fun1(int x,int y)
{
printf("%d+%d=",x,y);
return x+y;
}
int fun2(int x,int y)
{
printf("%d-%d=",x,y);
return x-y;
}
int fun3(int x,int y)
{
printf("%d*%d=",x,y);
return x*y;
}
int fun4(int x,int y)
{
printf("%d/%d=",x,y);
return x/y;
}
int executefun(int (*func)(int a,int b),int a,int b)
{
int s=(*func)(a,b);
return(s);
}