算術表示式的轉換
time limit: 1000 ms memory limit: 65536 kib
problem description
小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。
因為有了資料結構的基礎小明很快就解出了這個問題,但是他突然想到怎麼求出算術表示式的字首式和中綴式呢?小明很困惑。聰明的你幫他解決吧。
input
輸入一算術表示式,以』#'字元作為結束標誌。(資料保證無空格,只有一組輸入)
output
輸出該表示式轉換所得到的字首式 中綴式 字尾式。分三行輸出,順序是字首式 中綴式 字尾式。
sample input
ab+(c-d/e)f#
sample output
+ab-c/def
ab+c-d/ef
abcde/-f+
直接上**
#include
#include
using
namespace std;
char
qian
(char a)
;char
hou(
char a)
;int
main()
else
if(a[x]
=='('
||a[x]
==')'
)else
}printf
("\n");
hou(a);}
char
qian
(char a)
} z=0;
int m=0;
// printf("%d\n",x);
for(y=x-
1;y>=
0;y--
)else
else
if(a[y]
==')'
)else
if(a[y]
=='+'
||a[y]
=='-'
)else}}
else
if(a[y]
=='('
) m=m-1;
}}}if
(m!=0)
}//printf("%d\n",b[z-1]);
while
(z>0)
}char
hou(
char a)
else
if(a[c]
=='('
)else
if(a[c]
=='+'
||a[c]
=='-'
) b[
++k]
=a[c];}
else
if(a[c]
==')'
) k--;}
else
if(a[c]
=='*'
||a[c]
=='/'
) b[
++k]
=a[c];}
}while
(k!=0)
}
SDUT2484 算術表示式的轉換
這是乙個將中綴式轉化成表示式樹然後在遍歷輸出的題 操作總結為 1 把中綴式轉換為字尾式。2 把字尾式轉化為表示式樹。3 將表示式樹先序 中序 後序遍歷得出字首式 中綴式 字尾式。以下是 include include struct node char sa 100 sb 100 sc 100 int...
SDUT 2484 算術表示式的轉換
算術表示式的轉換time limit 1000ms memory limit 65536k 有疑問?點這裡 題目描述 小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。因為有了資料結構的基礎小明很快就解出了這個問題,但是他突然想到怎麼求出算術表示式的字...
sdut 2484 算術表示式的轉換
time limit 1000 ms memory limit 65536 kib submit statistic discuss problem description 小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。因為有了資料結構的基礎小明很...