永发信息网

求输入任何四则运算表达式能求出结果

答案:1  悬赏:50  手机版
解决时间 2021-07-25 20:55
  • 提问者网友:戎马万世
  • 2021-07-25 06:12

用两种方法 要求1:在 TC 编译器里运行

2:含有+、-、×、/、()、

0、1、2、3、4、5、6、7、8、9、

组成的四则运算表达式

例如:8+4/2-(3+9)/4

3:输入任何表达式后再出来结果,不是直接输出表达式的结果

急啊~~~!!!!! 谢谢!!!!!

最佳答案
  • 五星知识达人网友:渊鱼
  • 2021-07-25 07:44

#include <iostream>
#include <malloc.h>
#include <stdio.h>
using namespace std;
#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10
#define OK 1
#define ERROR 0
#define TRUE 1
#define FLASE 0
#define OVERFLOW 0


typedef int Status;
typedef int SElemType;


/
d=10*d+c-48;
Push(OPND,d);


} //c为运算数,先化ASCll码为十进制数,再入OPND栈,
//if(In(c))//不能只用一个else,否则发生错误
switch(Precede(GetTop(OPTR),c)){
case '<':
Push(OPTR, c);c=getchar(); //栈顶元素优先低
break;
case '=':
Pop(OPTR, x); c=getchar(); //脱括号并接受下一个字符
break;
case '>': //退栈并将运算结果入栈
Pop(OPTR,theta);
Pop(OPND,b);
Pop(OPND,a);
Push(OPND,operate(a,theta,b));
break;
case ' ':
return ERROR;
}//switch
}//while
return GetTop(OPND);
}


void main()
{ int result;
result=EvaluateExpress();
cout<<"表达式的运算结果是"<<result<<endl;
//system("pause");
}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯