卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

還原算術(shù)表達(dá)式 有哪位編程高手能夠幫,我用C語(yǔ)言寫(xiě)一個(gè)關(guān)于算術(shù)表達(dá)式求值的程序。(用數(shù)據(jù)結(jié)構(gòu)中的棧知識(shí))?

有哪位編程高手能夠幫,我用C語(yǔ)言寫(xiě)一個(gè)關(guān)于算術(shù)表達(dá)式求值的程序。(用數(shù)據(jù)結(jié)構(gòu)中的棧知識(shí))?使用堆棧根據(jù)優(yōu)先級(jí)將中綴表達(dá)式(輸入公式)轉(zhuǎn)換為后綴表達(dá)式(逆波蘭公式,即運(yùn)算符排在第一位,操作數(shù)排在第二位)

有哪位編程高手能夠幫,我用C語(yǔ)言寫(xiě)一個(gè)關(guān)于算術(shù)表達(dá)式求值的程序。(用數(shù)據(jù)結(jié)構(gòu)中的棧知識(shí))?

使用堆棧根據(jù)優(yōu)先級(jí)將中綴表達(dá)式(輸入公式)轉(zhuǎn)換為后綴表達(dá)式(逆波蘭公式,即運(yùn)算符排在第一位,操作數(shù)排在第二位),然后使用堆棧更改計(jì)算邊保存結(jié)果以供下次計(jì)算。最后,計(jì)算公式的答案,并輸入一個(gè)公式(用=負(fù)數(shù),如-3用0-3表示)。它支持高階運(yùn)算#include

所謂表達(dá)式求值就是從鍵盤(pán)上輸入一個(gè)四位算術(shù)表達(dá)式,按enter鍵后將表達(dá)式的結(jié)果輸出到屏幕上。表達(dá)式求值在計(jì)算機(jī)應(yīng)用中有著廣泛的應(yīng)用,例如在編譯器中編譯程序表達(dá)式。它也是數(shù)據(jù)結(jié)構(gòu)過(guò)程中棧一章中非常重要的算法。通過(guò)該算法的實(shí)現(xiàn),可以更好的掌握和理解棧的操作。中綴表達(dá)式表示運(yùn)算符位于操作數(shù)的中間。計(jì)算中綴表達(dá)式需要兩個(gè)堆棧:數(shù)字堆棧和運(yùn)算符堆棧。在整個(gè)中綴表達(dá)式求值過(guò)程中,涉及到的主要模塊有:棧相關(guān)運(yùn)算、建立優(yōu)先級(jí)表、將要計(jì)算的輸入字符串分成數(shù)字和運(yùn)算符、運(yùn)算處理等。1) 整體算法思路1)設(shè)置操作數(shù)和運(yùn)算符的堆棧,將表達(dá)式末尾的符號(hào)設(shè)置為#,將運(yùn)算符堆棧的底部初始化為#,并規(guī)定#-運(yùn)算符的優(yōu)先級(jí)最低(目的是確定兩個(gè)#-符相遇時(shí)表達(dá)式掃描的結(jié)束)。2) 如果當(dāng)前掃描到操作數(shù),那么果斷地將這個(gè)數(shù)放入操作數(shù)堆棧中,如果當(dāng)前符號(hào)堆棧中,那么操作符與堆棧頂部操作符優(yōu)先級(jí)比較,如果低于堆棧頂部?jī)?yōu)先級(jí),則操作符堆棧頂部元素彈出,并彈出兩個(gè)操作數(shù)進(jìn)行運(yùn)算,運(yùn)算后,結(jié)果將被推入堆棧。如果當(dāng)前符號(hào)的優(yōu)先級(jí)高于堆棧頂部,則將此運(yùn)算符放在堆棧上。3) 循環(huán)操作2,直到輸入表達(dá)式操作結(jié)束(運(yùn)算符堆棧底部的#與輸入表達(dá)式的#相交)。此時(shí),如果操作數(shù)堆棧中只剩下一個(gè)數(shù)字,則操作成功,此數(shù)字是表達(dá)式的結(jié)果。如果有多個(gè)數(shù)字,則輸入表達(dá)式是錯(cuò)誤的。