- 1
- 0
- 约1.18万字
- 约 76页
- 2026-06-03 发布于山东
- 举报
3.運算式求值1)無括弧算術運算式求值運算式運算及運算符優先順序3+4*5#+-*/**①0123②置空棧OVS、OPTR進OVS讀字元W退OVS頂、次頂,OPTR頂將T(i)=OVS新頂進OPTR棧W是操作符N結束NYNYYYW=‘#’’OPTRZ棧空YW優先順序≤OPTR棧頂優先順序N無括弧算術運算式的處理過程如右圖2)算術運算式處理規則規定優先順序表;(2)設置兩個棧:OVS(運算數棧)和OPTR(運算符棧);(3)自左向右掃描,遇操作符則與OPTR棧頂優先順序比較:當前操作符OPTR棧頂則進OPTR棧;當前操作符≤OPTR棧頂,OVS棧頂、次頂和OPTR棧頂,退棧形成運算T(i),T(i)進OVS棧。例:實現A/B↑C+D*E#的運算過程時棧區變化情況3)帶括弧算術運算式實現算符優先演算法時需要使用兩個工作棧:一個稱作運算符棧operator;另一個稱作運算元棧operand。演算法的基本過程如下:A.初始化運算元棧operand和運算符棧operator,並將運算式起始符“#”壓入運算符棧;B.讀入運算式中的每個字元,若是運算元則直接進入運算元棧operand,若是運算符,則與運
原创力文档

文档评论(0)