資料結構實驗之棧與佇列三 字尾式求值

2021-08-22 04:51:47 字數 970 閱讀 5136

problem description

對於乙個基於二元運算子的字尾表示式(基本運算元都是一位正整數),求其代表的算術表示式的值。

input

輸入乙個算術表示式的字尾式字串,以『#』作為結束標誌。

output

求該字尾式所對應的算術表示式的值,並輸出之。

sample input

59*684/-3*+#
sample output

57
hint

基本運算元都是一位正整數!

#include

#include

#define stackmax 100000 //注意要設定的大一點,防止越界

#define stacknum 100000 //同上

typedef int elemtype;

typedef struct

sqstack;

void initstack(sqstack *s)

//棧的初始化

void push(sqstack *s,int e)

*(s->top)=e;

s->top++;

}//入棧操作

int pop(sqstack *s)

//出棧操作

int gettop(sqstack *s)

//取棧頂元素

void f(sqstack *s,char n)

else if(n=='/')

else if(n=='+')

else if(n=='-')

//要是是運算子的話,就在棧中彈出兩個資料,進行計算後,再壓入棧中,'/'和'-『要注意運算的先後順序

}int main()

int k;

k=gettop(&s);//取棧頂值賦給k

printf("%d\n",k);//輸出k值

return 0;

}

資料結構實驗之棧與佇列三 字尾式求值

time limit 1000ms memory limit 65536kb submit statistic problem description 對於乙個基於二元運算子的字尾表示式 基本運算元都是一位正整數 求其代表的算術表示式的值。input 輸入乙個算術表示式的字尾式字串,以 作為結束標誌...

資料結構實驗之棧與佇列三 字尾式求值

problem description 對於乙個基於二元運算子的字尾表示式 基本運算元都是一位正整數 求其代表的算術表示式的值。input 輸入乙個算術表示式的字尾式字串,以 作為結束標誌。output 求該字尾式所對應的算術表示式的值,並輸出之。example input 59 684 3 exa...

資料結構實驗之棧與佇列三 字尾式求值

problem description 對於乙個基於二元運算子的字尾表示式 基本運算元都是一位正整數 求其代表的算術表示式的值。input 輸入乙個算術表示式的字尾式字串,以 作為結束標誌。output 求該字尾式所對應的算術表示式的值,並輸出之。example input 59 684 3 exa...