根据上一篇文章函数指针的学习,这次我们来做一个简单的练习。
请使用函数指针,来实现一个简单的计算器。
下面是我的实现代码,仅供大家参考
#include <stdio.h>
//计算器的实现
int Add(int x,int y)
{
return x + y;
}
int Sub(int x, int y)
{
return x - y;
}
int Mul(int x, int y)
{
return x * y;
}
int Div(int x, int y)
{
return x / y;
}
void menu()
{
printf("******1.Add *************\n");
printf("******2.Sub *************\n");
printf("******3.Mul *************\n");
printf("******4.Div *************\n");
printf("******0.Exit *************\n");
}
void method(int(*pf)(int, int))
{
int x = 0;
int y = 0;
printf("请输入你想要进行操作的两个数字\n");
scanf("%d %d", &x, &y);
int ret = pf(x, y);
printf("%d\n", ret);
}
int main()
{
int put = 0;
do
{
menu();
printf("输入你想要进行的操作\n");
scanf("%d", &put);
switch (put)
{
case 1:
method(Add);
break;
case 2:
method(Sub);
break;
case 3:
method(Mul);
break;
case 4:
method(Div);
break;
case 0:
printf("已经退出!\n");
break;
default:
printf("请重新输入\n");
break;
}
} while (put);
return 0;
}