哪位高手帮小弟看看这个C++的计算器问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 15:57:30
设计并实现一个简单的四则运算计算器程序。该程序可以接收由键盘输入的(十进制)整数的四则运算表达式(由不带后缀的十进制int型整数和加、减、乘、除、圆括号组成,不包括正负号,即单目运算符+、-,以’#’结束),计算出该表达式的值,然后输出。(提示:可利用递归下降法进行表达式的分析和计算。分析表达式时,可将分析单词(token)的功能、计算功能等用函数进行封装,并确定好函数的接口定义后,由两位同组同学分别完成,再放在一起组合成完整的程序)。
我还没学数组......

先把程序放上来,请自行阅读、修改:

# include <iostream>
# include <cstdlib>
# include <cctype>
# include <csetjmp>

// Error jmp_buf buffer
static std::jmp_buf errjb;

// Function prototypes.
int addsubt();
int multdiv();
int number();
void error();

// Global expression buffer.
static char expr[81];
static int pos;

////////////////////////////
//  The main() function.  //
///////////////////////////
int main()
{
   int ans;

   do
   {
      // Mark the top of the parsing descent.

      if(setjmp(errjb) ==