#include <iostream>
#include <stack>
#include <cmath>
#include <string>
using namespace std;
stack <double>NumStack;
stack <char>CharStack;
bool charFlag = 1;
int intFlag = 1;
int checkPriority(char c)
{
if (c == '+' || c == '-')
{
return 1;
}
if (c == '*' || c == '/')
{
return 2;
}
if (c == '^')
{
return 3;
}
return 0;
}
void printError()
{
system("cls");
cout << "ERROR" << endl;
}
int main()
{
string s;
cin >> s;
CharStack.push('#');
for (int i = 0; i < s.size();)
{
int flag = 0,pointNum=0,time=-1;
double x=0;
while ((s[i] >= '0'&&s[i] <= '9') || (s[i]=='.'))
{
if (s[i]=='.')
{
pointNum++;
i++;
}
else
{
if (pointNum=
中缀表达式求值(C++)
最新推荐文章于 2024-06-10 10:14:26 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)