#include<bits/stdc++.h>
using namespace std;
char str[101];
double hxs;
double exp()
{
cin>>str;
switch(str[0])//边递归读入边计算
{//case语句分情况处理
case'+':hxs=exp()+exp();break;
case'-':hxs=exp()-exp();break;
case'*':hxs=exp()*exp();break;
case'/':hxs=exp()/exp();break;
default:hxs=atof(str);//使用atof(str)把字符串str转换成一个double的浮点数
}
return hxs;
}
int main()
{
printf("%f\n",exp());
}
逆波兰表达式
于 2018-02-27 12:36:22 首次发布