C语言实现简单计算器代码

5星 · 超过95%的资源 需积分: 12 92 下载量 106 浏览量 更新于2024-11-24 4 收藏 2KB TXT 举报
"C语言实现一个简单的计算器代码" 在C语言中,我们可以创建一个程序来模拟基本的四则运算计算器。这个程序会接收用户输入的两个数字和一个运算符,然后执行相应的运算并显示结果。这里提供的代码示例实现了一个简单的计算器,包括加法、减法、乘法和除法功能。 首先,程序包含了三个头文件: 1. `stdio.h`:标准输入输出库,用于`printf`和`scanf`函数。 2. `conio.h`:通常在DOS环境下用于非缓冲字符输入,包含`getche()`函数,但这个头文件在某些编译器(如GCC)中可能不被支持。 3. `stdlib.h`:标准库,包含`exit()`函数,用于程序退出。 定义了两个常量: 1. `ERR`:表示操作失败,值为-1。 2. `MAX`:栈的最大容量,这里设置为100。 接下来,程序声明了一个整型数组`stack`作为存储数值的栈,并初始化了一个变量`top`表示栈顶指针,初始值为0。 `push`函数用于将一个整数压入栈中。如果栈未满(`top<MAX`),则将值存入栈顶元素并使`top`递增;否则,打印错误消息并返回`ERR`。 `pop`函数用于从栈中弹出一个整数。如果栈非空(`top!=NULL`),则获取栈顶元素,使`top`递减并返回该值;否则,打印错误消息并返回`ERR`。 在`main`函数中,程序开始执行以下步骤: 1. 打印欢迎信息。 2. 两次提示用户输入数字,并调用`push`函数将这两个数字压入栈中。 3. 提示用户选择运算符(+,-,*,/)。 4. 使用`getche()`获取用户输入的字符,通过`switch`语句判断运算符并执行相应的计算: - 加法:弹出两个数,相加后打印结果。 - 减法:弹出两个数,相减后打印结果。 - 乘法:弹出两个数,相乘后打印结果。 - 除法:弹出两个数,相除后打印结果。 注意,此代码中的除法没有处理除数为0的情况,实际应用中应添加异常处理。此外,`getche()`在某些环境中可能导致编译问题,可以替换为`getchar()`或使用其他输入方法。 最后,程序使用`do-while`循环结构,允许用户重复进行计算,直到他们选择退出。如果用户输入的运算符不是预期的四个选项之一,程序将提示错误信息。 通过这段代码,我们可以学习到C语言如何处理用户输入,使用栈数据结构以及实现基本的数学运算。同时,它还涉及到了条件分支(`switch`语句)、函数调用和错误处理等编程概念。