这期内容当中小编将会给大家带来有关如何用C语言编写一个简单的计算器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
描述:简单的实现四则运算
1.switch法
#include<stdio.h> void menu()//菜单函数 { printf("************************************\n"); printf("***** 1.add 2.sub *****\n"); printf("***** 3.mul 4.div *****\n"); printf("*********** 0.exit ***********\n"); printf("************************************\n"); } double Add(double x, double y)//加法函数 { return x + y; } double Sub(double x, double y)//减法函数 { return x - y; } double Mul(double x, double y)//乘法函数 { return x * y; } double Div(double x, double y)//除法函数 { return x / y; } int main() { int input = 0;//运算符 double x = 0.0;//第一个运算数 double y = 0.0;//第二个运算数 do { menu(); printf("请选择:>"); scanf("%d", &input); if (input >= 1 && input <= 4) { printf("请输入两个操作数(用空格分隔):>"); scanf("%lf%lf", &x, &y); } switch (input) { case 1: printf("%lf\n", Add(x, y)); break; case 2: printf("%lf\n", Sub(x, y)); break; case 3: printf("%lf\n", Mul(x, y)); break; case 4: printf("%lf\n", Div(x, y)); break; case 0: printf("退出\n"); break; default: printf("输入错误,请重新输入\n"); break; } } while (input); return 0; }
2.函数指针数组法
#include<stdio.h> void menu()//菜单函数 { printf("************************************\n"); printf("***** 1.add 2.sub *****\n"); printf("***** 3.mul 4.div *****\n"); printf("*********** 0.exit ***********\n"); printf("************************************\n"); } double Add(double x, double y)//加法函数 { return x + y; } double Sub(double x, double y)//减法函数 { return x - y; } double Mul(double x, double y)//乘法函数 { return x * y; } double Div(double x, double y)//除法函数 { return x / y; } int main() { int input = 0;//运算符类型 double x = 0.0;//第一个操作数 double y = 0.0;//第二个操作数 double(*p[5])(double, double) = {NULL,Add,Sub,Mul,Div};//把相应的函数指针放入一个数组里 do { menu(); printf("请选择:>"); scanf("%d", &input); if (input >= 1 && input <= 4) { printf("请输入两个操作数(用空格分隔):>"); scanf("%lf%lf", &x, &y); printf("%lf\n", p[input](x, y)); } else if (0 == input) printf("退出\n"); else printf("输入错误,请重新输入\n"); } while (input); return 0; }
上述就是小编为大家分享的如何用C语言编写一个简单的计算器了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。