设一个判断运算符优先级的函数 char Precede(char a, char b);
根据运算符的不同,自然有不同操作 int operate(int a, char theta, int b);
不同运算符间的如下优先顺序:
实现代码如下:
# include<iostream>
# include<stack>
using namespace std;
int operate(int a, char theta, int b);
char Precede(char a, char b);
int main()
{
stack<char> operators;// 运算符栈
stack<int> operands;// 操作数栈
char num[15]; // 用于存储表达式中连续输入的多位数字
int result_flag = 1;
operators.push('#');
cout << "请输入表达式,并以”#“结尾\n";
char ch ;
cin >> ch;
while (ch != '#'