用函数指针数组模拟实现简单计算器功能

用函数指针数组模拟实现简单计算器功能_第1张图片

#include

int add(int a, int b)
{
	return a + b;    //加法
}
int sub(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; //除法
}

int main()
{
	int x, y;
	int iupt = 1;
	int ret = 0;
	int(*pf[5])(int x, int y) = { 0, add, sub, mul, div };//创建函数指针数组接收函数地址
	while (iupt)
	{
		printf("***************************\n");
		printf("  1:add            2:sub   \n");   //打印菜单
		printf("  3:mul            4:div   \n");
		printf("***************************\n");

		printf("请选择:");
		scanf("%d", &iupt);
		
		if ((iupt <= 4 && iupt >= 1))
		{
			printf("请输入操作数:");
			scanf("%d %d", &x, &y);
			ret = (*pf[iupt])(x, y);
		}
		else
		{
			printf("输入有错误\n");
		}
		printf("ret = %d\n", ret);
	}
	return 0;
}

你可能感兴趣的:(c语言每日一练,c语言,开发语言,算法)