首页 > 其他 > 详细

计算器的函数实现

时间:2015-12-10 09:33:33      阅读:354      评论:0      收藏:0      [点我收藏+]

利用函数实现加减乘除计算器

方法一

#include<stdio.h>
enum op
{
	EXIT,
	ADD,
	SUB,
	MUL,
	DIV

};
void menu()
{
	printf("1.add  2.sub.\n");
	printf("3.mul  4.div.\n");
	printf("0.exit\n");
}
int _add(int num1, int num2)
{
	return num1 + num2;
}
int _sub(int num1, int num2)
{
	return num1 - num2;
}
int _mul(int num1, int num2)
{
	return num1 * num2;
}
int _div(int num1, int num2)
{
	return num1 / num2;
}
int main()
{
	int input = 1;
	int num1 = 0;
	int num2 = 0;
	int ret = 0;
	while (input)
	{
		menu();
		printf("请选择>");
		scanf("%d", &input);
		switch (input)
		{
		case ADD:
		{
					printf("%请输入两个操作数");
					scanf("%d%d", &num1, &num2);
					ret = _add(num1, num2);
					break;
		}
		case SUB:
		{
					printf("%请输入两个操作数");
					scanf("%d%d", &num1, &num2);
				    ret = _sub(num1, num2);
					break;
		}
		case MUL:
		{
					printf("%请输入两个操作数");
					scanf("%d%d", &num1, &num2);
					ret = _mul(num1, num2);
					break;
		}
		case DIV:
		{
					printf("%请输入两个操作数");
					scanf("%d%d", &num1, &num2);
					ret = _div(num1, num2);
					break;
		}
		case EXIT:
		{
					 exit(0);
					 break;
		}
		}
		printf("ret=%d\n", ret);
	}
}

方法二

#include<stdio.h>
enum op
{
	EXIT,
	ADD,
	SUB,
	MUL,
	DIV

};
void menu()
{
	printf("1.add  2.sub.\n");
	printf("3.mul  4.div.\n");
	printf("0.exit\n");
}
//参数和返回值类型均相同
int _add(int num1, int num2)
{
	return num1 + num2;
}
int _sub(int num1, int num2)
{
	return num1 - num2;
}
int _mul(int num1, int num2)
{
	return num1 * num2;
}
int _div(int num1, int num2)
{
	return num1 / num2;
}
int main()
{
	int input = 1;
	int num1 = 0;
	int num2 = 0;
	int ret = 0;
	//转移表
	int(*pfun[5])(int, int) = { 0, _add, _sub, _mul, _div };
	//要求函数的参数和返回值类型均相同才能放到指针数组里
	while (input)
	{
		
			menu();
			printf("请选择>");
			scanf("%d", &input);
			if (input != 0)
			{
				printf("请输入两个数:>");
				scanf("%d%d", &num1, &num2);
				ret = pfun[input](num1, num2);
				printf("ret=%d\n", ret);
			}
			
		
	}
}


本文出自 “无以伦比的暖阳” 博客,请务必保留此出处http://10797127.blog.51cto.com/10787127/1721325

计算器的函数实现

原文:http://10797127.blog.51cto.com/10787127/1721325

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!