首页 > 编程知识 正文

c语言简单计算器程序编写,c语言简单计算器程序设计

时间:2023-05-06 16:53:46 阅读:259448 作者:3128

c语言——简单计算器——加、减、乘、除

#define _crt_secure_no_warnings#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");}int add(int x, int y){return x + y;}int sub(int x, int y){return x - y;}int mul(int x, int y){return x * y;}int div(int x, int y){return x / y;}int main(){int input = 0;int x = 0, y = 0;do{menu();printf("请选择:>");scanf("%d", &input);switch (input){ case 1: printf("请输入两个操作数"); scanf("%d%d", &x, &y); printf("%dn", add(x, y)); break; case 2: printf("请输入两个操作数"); scanf("%d%d", &x, &y); printf("%dn", sub(x, y)); break; case 3: printf("请输入两个操作数"); scanf("%d%d", &x, &y); printf("%dn", mul(x, y)); break; case 4: printf("请输入两个操作数"); scanf("%d%d", &x, &y); printf("%dn", div(x, y)); break; case 0: printf("退出计算器"); break; default: printf("选择错误,请重新选择"); break;}} while (input);return 0;}

在函数之中建立主菜单函数menu,在case语句中分别使用四个简单计算的函数
为了简单明了,可以使用函数指针数组

#define _CRT_SECURE_NO_WARNINGS#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");}int add(int x, int y){return x + y;}int sub(int x, int y){return x - y;}int mul(int x, int y){return x * y;}int div(int x, int y){return x / y;}int main(){int input = 0;int x = 0, y = 0;int ret = 0;int(*p[])(int, int) = {0, add, sub, mul, div};do{menu();printf("请选择:>");scanf("%d", &input);if (input == 0){printf("退出程序");break;}else if (input >= 1 && input <= 4){printf("请输入两个操作数");scanf("%d%d", &x, &y);ret = p[input](x, y);printf("ret=%dn", ret);}elseprintf("输入错误,请重新输入");} while (input);return 0;} int(*p[])(int, int) = {0, add, sub, mul, div};

这条语句定义p为数组,数组内的元素为函数指针,后面两个int 代表指向的函数有两个形参,均为整形,前面第一个int 代表函数的返回值为整形

ret = p[input](x, y);

解引用的时候,后面加上括号,括号输入实参即可

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。