#include<stdio.h>
double add(double a,double b)
{
return a+b;
}
double sub(double a,double b)
{
return a-b;
}
double mul(double a,double b)
{
return a*b;
}
double div(double a,double b)
{
return a/b;
}
int main()
{
int input=1;
double a;
double b;
double ret;
while(input)
{
double (*fun[])(double a,double b)={0,add,sub,mul,div};//定义函数数组指针
printf("*******************\n");
printf("***1 add 2 sub***\n");
printf("***3 mul 4 div***\n");
printf("*******************\n");
scanf("%d",&input);
printf("plese input\n");
scanf("%lf,%lf",&a,&b);
ret = fun[input](a,b);//读取数组内容
printf("=%lf\n",ret);
}
return 0;
}
<img src="https://img-blog.youkuaiyun.com/20150329171243273?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd29kZXNoaWppYW5ocmY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />