编译原理【c语言实现】将四则运算中缀表达式(带括号,有空格,有变量)化为后缀表达式
示范1
输入中缀
var+2 +33
输出后缀
var 2 + 33 +
示范2
中缀
((1+3)*2 + 5)*33
后缀
1 3 + 2 * 5 + 33 *
思路
等以后有时间我会完善。整体受到编译原理教材的启示。关键就是写出左递归的产生式,然后消除左递归,表示成容易用程序实现的方式。
代码
/* 左递归
expr -> expr + term {print(‘+’)}
| expr - term {print(
原创
2021-03-20 13:54:57 ·
775 阅读 ·
0 评论