最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
C语言实现简单计算器(VC6.0可用)
时间:2026-08-15 12:13:50 编辑:袖梨 来源:一聚教程网
处理C语言实现简单计算器(VC6.0可用)这类问题时,先确认目标场景,再按步骤核对配置或玩法细节。
一、项目介绍
C语言版简易计算器,包含几个小功能,包括基本运算、进制转换、一元二次方程,支持返回操作,整体源码比较精简,代码逻辑简单,扩展性强,非常适合新手了解和学习的小项目。
二、运行截图
导航菜单,支持六种计算(可扩展)

根据输入选择,可重复使用

阶乘计算

三、代码思路
代码整体依靠一个swtich结构根据用户的输入做分支,分别调用对应的计算函数,由于代码比较短,将每个计算的代码分别写到了每个case里,代码逻辑简单,核心计算都是套数学公式即可,没有什么难度,大家可以直接读代码,并有参考注释。
建议:大家可以根据情况予以功能增加,然后将独立的代码封装到函数里,体会函数模块化思想,让代码更简洁。
四、完整源码
#include <stdio.h> #include <math.h> #include <stdlib.h> //预处理指令int main(void){ double bNumber, Number, Result; //给加减乘除定义的变量 int No; //选项的定义变量 double a, b, c, x1, x2, Rad; //给一元一次方程定义的变量 int Ary_10; //定义进制的变量 char string[32]; //二进制变量定义 system ("title: www.dotcpp.com"); while(1) { //界面 printf ("┏ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┓n"); printf ("┇请选择你要计算的方法: ┇n"); printf ("┣ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┫n"); printf ("┇ 加法请按_1 进制转换_5 ┇n"); printf ("┇ 减法请按_2 求一元二次方程_6 ┇n"); printf ("┇ 乘法请按_3 ┇n"); printf ("┇ 除法请按_4 退出_0 ┇n"); printf ("┗ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┛n"); printf ("Please write down the number:"); scanf ("%d",&No); if (No == 1) { // 加法 printf (" 请输入被加数:"); scanf ("%lf",&bNumber); printf (" 请输入加数:"); scanf ("%lf",&Number); Result = bNumber + Number; printf (" 结果是: %lfnn",Result); } else if (No == 2) { // 减法 printf (" 请输入被减数:"); scanf ("%lf",&bNumber); printf (" 请输入减数:"); scanf ("%lf",&Number); Result = bNumber - Number; printf (" 结果是: %lfnn",Result); } else if (No == 3) { // 乘法 printf (" 请输入被乘数:"); scanf ("%lf",&bNumber); printf (" 请输入乘数:"); scanf ("%lf",&Number); Result = bNumber * Number; printf (" 结果是: %lfnn",Result); } else if (No == 4) { // 除法 printf (" 请输入被除数:"); scanf ("%lf",&bNumber); printf (" 请输入除数:"); scanf ("%lf",&Number); Result = bNumber / Number; printf (" 结果是: %lfnn",Result); } else if (No == 5) { //进制转换的代码 printf("请输入需要转换的十进制数:"); scanf("%d", &Ary_10); itoa (Ary_10, string ,2); printf("二进制: %sn", string); printf("八进制: %on", Ary_10); printf("十六进制: %xn", Ary_10); } else if (No == 6) { //求一元二次方程的解的代码 printf("请输入一元一次方程的a,b,c三个数:"); scanf("%lf%lf%lf",&a,&b,&c); Rad = b*b - 4*a*c; if (Rad > 0) { x1 = -b + sqrt(Rad) / (2*a); x2 = -b - sqrt(Rad) / (2*a); printf("有两个解 x1 = %lf, x2 = %lfn", &x1, &x2); } else if (Rad == 0) { x1 = -b / (2*a); printf("只有一个解 x1 = %lfn", &x1); } else { printf("无解n"); } } else if (No == 0) { // 退出程序 break; } else { // 输入的选项不对 printf(" 请输入正确的数字。nn"); } system ("pause"); //按任意键继续 system ("cls"); //清屏 } return 0; getchar();}
相关文章
- 华为手机网络拒绝接入怎么解决(华为手机网络拒绝接入解决方法) 08-15
- 歪歪漫画秋蝉登录页面-秋蝉漫画土豪版免费阅读网址 08-15
- jmcomic.2.0.mic官网版免费下载-jmcomic.2.0.mic官网版安卓手机版 08-15
- 华为路由器信号不好怎么增强(华为路由器信号不好增强方法) 08-15
- 崩铁4.2绯英培养材料详情 08-15
- 拍照搜题网页版入口-夸克AI搜题官方网页版直达 08-15