实现简易计算器
2015-11-25 20:24
281 查看
该计算器可以用于“加减乘除” 运算: 代码如下: #include <stdio.h> #include <stdlib.h> enum OP //枚举各个功能 { EXIT, ADD, SUB, MUL, DIV }; 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) //实现除法函数 { if (b == 0) { printf("除数位0\n"); } return a / b; } void menu() //菜单函数,用于实现菜单栏 { printf("*************************\n"); printf("**** 1.add 2.sub ****\n"); printf("**** 3.mul 4.div ****\n"); printf("******** 0.exit *********\n"); printf("*************************\n"); } int(*pfun[5])(int, int) = {0, _add, _sub, _mul, _div}; //定义了一个数组指针型函数 int main() { int input = 1; int num1 = 0; int num2 = 0; int ret = 0; while (input) //选择要执行的操作 { menu(); //打印菜单 printf("请选择>:"); scanf("%d", &input); printf("请输入两个整数操作数>:"); scanf("%d%d", &num1, &num2); if (input >= 1 && input <= 4) { ret = pfun[input](num1, num2); //调用数组指针函数,进行相应的运算操作 } else if (input == 0) //退出程序 { exit(EXIT_FAILURE); } else { printf("选择错误\n"); //选择是错误的 } printf("ret = %d\n", ret); //输出计算的结果 } return 0; } 在主函数while循环中也可以用switch语句进行相应的操作 代码如下: switch (input) { case 1: ret = _add(num1, num2); break; case 2: ret = _sub(num1, num2); break; case 3: ret = _mul(num1, num2); break; case 4: ret = _div(num1, num2); break; case 0: exit(EXIT_FAILURE); break; default: printf("选择错误,请重新选择.\n"); break; }
相关文章推荐
- Linux C函数参考手册(PDF版)
- Lua教程(十七):C API简介
- C#实现打造气泡屏幕保护效果
- 使用C#代码获取存储过程返回值
- C/C++数据对齐详细解析
- 利用C语言来求最大连续子序列乘积的方法
- 字符串的组合算法问题的C语言实现攻略
- C 语言基础教程(我的C之旅开始了)[三]
- C++中的extern “C”用法详解
- C 语言基础教程(我的C之旅开始了)[七]
- 最大子矩阵问题实例解析
- C字符串操作函数实现方法小结
- C语言中static的作用及C语言中使用静态函数有何好处
- 字典树的基本知识及使用C语言的相关实现
- 详解C语言中free()函数与getpagesize()函数的使用
- C/C++ 宏详细解析
- 使用C语言解决字符串全排列问题
- C#定制Excel界面并实现与数据库交互的方法
- C/C++实现对STORM运行信息查看及控制的方法