#include <stdio.h>
#include <string.h>
/*指针函数制作计算器+-* */
void menu()
{
printf("----------------计算器-----------------\n");
printf("-------1.加法------------2.减法--------\n");
printf("-------3.乘法------------4.除法--------\n");
printf("-------0.exit--------------------------\n");
}
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)
{
if (y !=0)
{
return x / y;
}
else
{
printf("分母不能为0,请重新输入\n");
return NULL;
}
}
int main()
{
int input = 0;
do
{
int x = 0;
int y = 0;
int ret = 0;
//定义函数指针数组
int (*ptrArry[5])(int, int) = { NULL,Add,Sub,Mul,Div };
//菜单
menu();
printf("请选择:");
scanf("%d", &input);
if (input == 1 || input == 2 || input == 3 || input == 4 )
{
printf("请输入两数字:");
scanf("%d %d", &x, &y);
ret = (*ptrArry[input])(x, y);
printf("ret=%d\n", ret);
}
else
{
printf("输入错误\n");
}
} while (input);
return 0;
}
|