失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > C语言 简单实现计算器功能 ·函数指针数组实现计算器

C语言 简单实现计算器功能 ·函数指针数组实现计算器

时间:2019-06-24 13:45:32

相关推荐

C语言 简单实现计算器功能 ·函数指针数组实现计算器

普通代码实现计算器功能:

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>//定义加减乘除方法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 input = 0;int ret = 0;int a = 0;int b = 0;do {printf("********************\n");printf(" 1.add 2.sub\n");printf(" 3.mul 4.div\n");printf(" 0.exit\n");printf("********************\n");printf("请选择:>");scanf("%d", &input);switch (input) {case 1:printf("请输入操作数:");scanf("%d %d", &a, &b);ret = add(a, b);printf("%d\n", ret);break;case 2:printf("请输入操作数:");scanf("%d %d", &a, &b);ret = sub(a, b);printf("%d\n", ret);break;case 3:printf("请输入操作数:");scanf("%d %d", &a, &b);ret = mul(a, b);printf("%d\n", ret);break;case 4:printf("请输入操作数:");scanf("%d %d", &a, &b);ret = div(a, b);printf("%d\n", ret);break;case 0:printf("退出程序~\n");break;default:printf("选择错误\n");break;}} while (input);return 0;}

函数指针数组实现计算器功能:

利用函数指针数组把计算器方法(封装?)在一个数组中

调用更加简单,代码更加简洁~

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>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 input = 0;int ret = 0;int a = 0;int b = 0;声明定义函数指针数组让NULL在0是让用户选择函数方法时操作方便int(*pfArr[5])(int, int) = {NULL,Add,Sub,Mul,Div };do {printf("********************\n");printf(" 1.add 2.sub\n");printf(" 3.mul 4.div\n");printf(" 0.exit\n");printf("********************\n");printf("请选择:>");scanf("%d", &input);//细心判断用户选择if (input >= 1 && input <= 4) {printf("请输入两个操作数:>");scanf("%d %d", &a, &b);通过用户input选择哪个函数,就去函数指针数组中找该函数并且把a,b的数据传递过去。ret = (pfArr[input])(a, b);printf("ret = %d\n", ret);}else if (input == 0) {printf("退出程序~");break;}else {printf("选择错误\n");}} while (input);return 0;}

如果觉得《C语言 简单实现计算器功能 ·函数指针数组实现计算器》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。