前缀表达式-怎样用空格分隔一个字符串

Posted tat296847

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前缀表达式-怎样用空格分隔一个字符串相关的知识,希望对你有一定的参考价值。

 1 #include<iostream>
 2 #include<cstdlib>
 3 #include<stack>
 4 #include<string>
 5 #include<sstream> 
 6 using namespace std;
 7 stack<double>s;
 8 char a[100][20];
 9 int main(){
10     string str;
11     getline(cin, str);
12     istringstream iss(str);
13     int i = 0;
14     while(!iss.eof()){
15         iss>>a[i++];
16     }
17     i--;
18     for(;i>=0;i--){
19         if(atof(a[i])!=0)
20             s.push(atof(a[i]));
21         else{
22             string si = a[i];
23             double d1 = s.top();
24             s.pop();
25             double d2 = s.top();
26             s.pop();
27             if(si=="*")d1*=d2;
28             else if(si=="+")d1+=d2;
29             else if(si=="-")d1-=d2;
30             else if(si=="/")d1/=d2;
31             s.push(d1);
32         }
33     }
34     printf("%f\n",s.top());
35     return 0;
36 }

备注:主要就是利用标黄的那几行!

非常好用!

以上是关于前缀表达式-怎样用空格分隔一个字符串的主要内容,如果未能解决你的问题,请参考以下文章

17.11.17 递归作业

7-21 求前缀表达式的值

栈与队列应用:计算前缀表达式的值

蓝桥杯 前缀表达式

正则表达式 - 查找所有空格并忽略多行字符串中的连字符分隔的单词

Python 正则表达式将空格分隔的单词分隔成一个列表