当前位置: 首页 > news >正文

c语言实现简易计算器

计算器包含加减乘除;

1我们要先分别写加法函数,减法函数,乘法函数,除法函数;

2设计一个方式选择我们的计算函数;这里可以用switch函数,在不同的情况下调用不同的函数进行加减乘除;

3选用do while循环对计算器连续使用和退出操作;

代码

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void calcu(int(*pa)(int,int), int x, int y)
{
printf("请输入两个操作数:\n");
scanf("%d %d", &x, &y);
int ret = (*pa)(x, y);
printf("%d\n", ret);
}
int add(int x, int y)
{
return x + y;
}
int sub(int x, int y)
{
return x - y;
}
int multi(int x, int y)
{
return x * y;
}
int dive(int x, int y)
{
return x / y;
}
void menu()
{
printf("------------calculate-------------\n");
printf("--------1:add-------2:sub---------\n");
printf("--------3:multi-----3:dive--------\n");
printf("---------------0:exit -----------\n");
printf("----------------------------------\n");
printf("----------------------------------\n");
}

int main()
{
int n = 0;
int a = 0, b = 0;
int ret = 0;
do
{
menu();
printf("请选择:");
scanf("%d", &n);
switch (n)
{
case 1:
calcu(add, a, b);
break;
case 2:
calcu(sub, a, b);
break;
case 3:
calcu(multi, a, b);
break;
case 4:
calcu(dive, a, b);
break;
default:
printf("请重新输入:");
}
} while (n);
}

我们使用了回调函数,这样便利了case里的代码,回调函数通过函数指针调用函数;

http://www.cnnetsun.cn/news/87936.html

相关文章:

  • LobeChat文件上传与语音交互实测:这些功能太惊艳了
  • LobeChat日志记录与审计功能配置方法说明
  • Qwen3-8B接入MCP实现动态工具调用
  • Docker 从入门到精通教程
  • waitGroup底层源码分析
  • LobeChat能否用于编写Prometheus告警规则?可观测性增强
  • 大模型学习全攻略:七阶段系统学习路线图,从基础到实战应用,非常详细收藏我这一篇就够了
  • 玄晶引擎AI数字员工更新深度测评:Sora2赋能+RPA运营,AI内容生产进入效率革命期
  • YOLOv5中使用torch加载自定义模型进行目标检测
  • LobeChat能否隐藏源码信息?增强系统隐蔽性
  • React 的桶算法详解
  • 深入理解Dify的依赖管理机制(Dependency Walker适用场景)
  • CordovaOpenHarmony车辆管理系统开发
  • YOLO训练中断恢复技巧:避免重复计算
  • 电气自动化专业相关认证解析
  • 手机内存告急?MAZANOKE 压缩照片不损画质,加载cpolar远程用更方便
  • 「直通」英伟达,蓝思科技补齐AI算力布局又一块拼图
  • Dify + Jenkins 实现AI应用持续集成与自动化部署
  • MTS AI智能聚合公链正式上线
  • LobeChat能否生成SQL语句?数据库查询助手上线
  • 告别深夜批改:用Qwen3-VL大模型打造会“理解”的作文阅卷助手
  • LobeChat语音输入功能实测:让AI对话更自然流畅
  • 基于PaddlePaddle的视觉模型训练实战:从Docker安装到GPU算力调用
  • LobeChat能否实现多轮对话优化?上下文理解增强策略
  • 如何在Windows和Linux上完成TensorRT安装包的部署
  • Dify在边缘计算场景下部署的可行性评估
  • LobeChat能否对接Airtable?轻量级数据库联动方案
  • LobeChat能否实现AI故事续写?创意写作激发灵感
  • AI知识科普丨什么是 ModelOps?
  • Windows 10下Anaconda安装OpenCV指南