資料結構 棧的四則運算實現

2021-10-10 05:55:00 字數 1402 閱讀 2487

請各位大佬們賜教,目前該程式支援非負整數的四則運算僅支援"(「和」)",可以疊加多層。

#include

#include

using

namespace std;

bool

isdigit

(char a)

intfd

(char a)

else

if(a ==

'+'|| a ==

'-')

else

if(a ==

'@')

else

if(a ==

'(')

else

if(a ==

')')

}int

cla(

int a,

int b,

char chart)

}int

claee

(string instr)

//直接加入字尾表示式中

hstr +

= instr[i]

;//新增數字後的#

if(i < n-1&&

!isdigit

(instr[i +1]

))if(i == n -1)

}else

else

if(instr[i]

==')'

) ops.

pop();

}else

ops.

push

(instr[i]);

}}//not digit

}//for

//清空運算子

while

(ops.

top()!=

'@')

int n2 = hstr.

length()

;int i =0;

bool isd =

false

;//標記i是不是在數字範圍內

int num =0;

stack<

int> stn;

//轉成字尾

cout <<

"字尾表示式為:"

<< hstr << endl;

while

(i < n2)

else isd =

true

;//遇到數字的前乙個#

}elseif(

isdigit

(hstr[i]))

else

i++;}

int ans = stn.

top();

return ans;

}int

main()

return0;

}

資料結構 四則運算

1.平時我們所接觸到的四則運算都是中序表示式,而要進行程式設計計算時要考慮符號優先順序神馬的很麻煩,故通常將其轉換為前序表示式或者後序表示式 中序表示式 2 3 2 1 3 4 1 前序表示式 23 21 3 41 後序表示式 23 21 341 2.中序轉前序 1.將中序表示式逆 1 4 3 1 ...

資料結構 四則運算

1 c語言實現科學計算器 2 c語言實現四則運算 小型計算器 3 經典演算法 算術表示式求值 4 棧 的典型應用 表示式求值 c語言實現 5 利用c語言 easyx圖形設計 製作簡易計算器 6 從鍵盤上輸入乙個字尾表示式,試編寫演算法計算表示式的值。規定 逆波蘭表示式的長度不超過一行,以符作為 輸入...

棧 實現四則運算

題目描述 給定乙個字串描述的算術表示式,計算出結果值。輸入字串長度不超過100,合法的字元包括 0 9 字串內容的合法性及表示式語法的合法性由做題者檢查。本題目只涉及整型計算。題目描述 給定乙個字串描述的算術表示式,計算出結果值。輸入字串長度不超過100,合法的字元包括 0 9 字串內容的合法性及表...