问题描述
程序代码
#include <iostream>
using namespace std;
double exp() {
char s[20];
cin >> s;
switch (s[0]) {
case '+': return exp() + exp(); //注意此处exp()读取的顺序
case '-': return exp() - exp();
case '*': return exp() * exp();
case '/': return exp() / exp();
default: return atof(s); //atof()可以将一个double型字符串转换为数值
break;
}
}
int main()
{
cout << exp();
}