更多"中缀表达式A-(B+C/D)×E的后缀形式是()。"的相关试题:
[单项选择]已知一算术表达式的中缀形式为A+B*C-D/E,后缀形式为ABC*+DE/-,其前缀形式为______。
A. -A+B*C/DE
B. -A+B*CD/E
C. -+*ABC/DE
D. -+A*BC/DE
[简答题]【说明】
本流程图是将中缀表示的算术表达式转换成后缀表示。如中缀表达式
(A-(B*C+D)*E)/(F+G))
的后缀表示为
ABC*D+E*-FG+/
为了方便,假定变量名为单个英文字母,运算符只有+、-、*、/(均为双目运算符,左结合),并假定所提供的算术表达是非空且语法是正确的。另外,中缀表示形式中无空格符,但整个算术表达式以空格符结束。流程图中使用的符号的意义如下:
数组 IN[]存储中缀表达式;
数组 POLISH[]存储其后缀表达式;
数组 S[]是一个后进先出栈;
函数PRIOR(CHAR)返回符号CHAR的优先级,各符号的优先级见表2:
表2 CHAR | PRIOR(XHAR) |
*/ + - ( ) | 4 3 2 1 |
【问题1】
填充流程图中①的判断条件。
[单项选择]中缀表达式D/C^A+B*E-D*F的前缀表达式为______。
A. 一+/D^CA*BE*DF
B. DCA^/BE*+DF*-
C. -^CA+/D*BE*DF
D. -+/D^C*ABE*DF
[单项选择]
算术表达式采用逆波兰式表示时不用括号,可以利用 (1) 进行求值。与逆波兰式ab-cd+*对应的中缀表达式是 (2) 。
(1)处填()。
A. 数组
B. 栈
C. 队列
D. 散列表
[单项选择]已知操作符包括“+”、“-”、“*”、“/”、“(”和“)”。将中缀表达式a+b-a*((c+d)/e-f)+g转换为等价的后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符。若栈初始时为空,则转换过程中同时保存在栈中的操作符的最大个数是
A. 5
B. 7
C. 8
D. 11
[单项选择]表达式“X=A+B×(C-D)/E”的后缀表示形式可以为()(运算符优先级相同时,遵循左结合的原则)。
A. XAB+CDE/-×=
B. XA+BC-DE/×=
C. XABCD-×E/+=
D. XABCDE+×-/=
[单项选择]表达式a*(b+c)-d的后缀表达形式为()。
A. abcd*+-
B. abc+*d-
C. abc*+d-
D. -+*abcd
[单项选择]已知赋值语句a:=(b-c)*(d-e),它的后缀式是()
A. abc-de-*:=
B. :=a*-bc-de
C. ①(-,a,b)
D. ① (-,a,b,t1)
[单项选择]“X=(A+B)×(C-D/E)”的后缀式表示为 (17) 。
[单项选择]“通过指明一系列“X=(A+B)×(C-D/E)”的后缀式表示为______。
A. XAB+CDE/-×=
B. XAB+C-DE/×=
C. XAB+CDE-/×=
D. XAB+CD-E/×=