利用棧實現的字尾形式的算術表示式的求值的c 程式

2021-05-27 21:16:07 字數 820 閱讀 9507

/*

* stack demo, evaluation for arithmetic expression

* time-stamp: <2011-08-24 15:17:31 root>

** [email protected]

*/#include

using namespace std;

template < class t > class stk

~stk()

void push(t a)

t pop()

bool stk_empty()

bool stk_full()

t get_top()

void stk_dump()

cout << endl;

}private:

int sp;

t *stk_base;

t *stk_bottom;

};int main()

printf("\n");

c[j] = 0;

printf("%s\n", c);

stk < float >d;

int k = 0;

while (c[k] != 0)

case '*':

d.push(d.pop() * d.pop());

d.stk_dump();

break;

default:

break;

}k++;

}cout << a << "=" << d.pop() << endl;

return 0;

}

基於棧的字尾算術表示式求值

這是乙個菜雞的19秋季學期資料結構實驗課 基於棧的字尾算術表示式求值 實驗目的 1.掌握中綴表示式轉換為字尾表示式的演算法。2.掌握字尾表示式求值的演算法。實驗內容 問題描述 輸入乙個中綴算術表示式,將其轉換為字尾表示式,然後對字尾表示式進行求值。運算子包括 參與運算的為小於10的自然數 只考慮二元...

利用棧解析算術表示式

在沒有接觸到棧這種資料結構時,一直覺得用程式計算四則表示式是件相當繁瑣的事。但利用棧,問題就立刻變得容易許多。解析任何包括 和0到9數字組成的算術表示式,並計算其結果。中綴表示式就是通常所說的算術表示式,比如 1 2 3 4。字尾表示式是指通過解析後,運算子在運算數之後的表示式,比如上式解析成字尾表...

利用棧計算字尾表示式

字尾表示式又稱作逆波蘭式,操作符在運算數的後面,所以叫做字尾表示式。例如 1 2 3的字尾表示式是 1 2 3 可以 2 3 看作乙個運算數a,1 a 也符合運算數 運算數 操作符的格式。的特殊處理 因為要處理大於9的數,所以要在每個數和操作符後加上空格,將相鄰的數分隔開。字尾表示式以字串的形式存在...