可包括后缀表达式求值、中缀表达式求值、括号匹配等栈的综合应用。 举例如下: 题目:中缀表达式求值 [问题描述] 中缀表达式是我们熟悉的表达式形式。为了能正确表示运算的先后顺序,中缀表达式中难免要出现括号。假设我们的表达式中只允许有圆括号。 读入一个浮点数为操作数的中缀表达式后,对该表达式进行运算。 要求中缀表达式以一个字符串的形式读入,可含有加、减、乘、除运算符和左、右括号,并假设该表达式以“#”作为输入结束符。 如输入“3.5*(20+4)-1#”,则程序运行结果应为83。

可包括后缀表达式求值、中缀表达式求值、括号匹配等栈的综合应用。 举例如下: 题目:中缀表达式求值 [问题描述] 中缀表达式是我们熟悉的表达式形式。为了能正确表示运算的先后顺序,中缀表达式中难免要出现括号。假设我们的表达式中只允许有圆括号。 读入一个浮点数为操作数的中缀表达式后,对该表达式进行运算。 要求中缀表达式以一个字符串的形式读入,可含有加、减、乘、除运算符和左、右括号,并假设该表达式以“#”作为输入结束符。 如输入“3.5*(20+4)-1#”,则程序运行结果应为83。


参考答案和解析

相关考题:

算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(2)处应选择() A.a-b+c*dB.(a-b)*c+dC.(a-b)*(c+d)D.a-b*c+d

算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(1)处应选择() A.数组B.栈C.队列D.散列表

已知一算术表达式的中缀表达式为a-(b+c/d)*e,其后缀形式为()A.-a+b*c/dB.-a+b*cd/eC.-+*abc/deD.abcd/+e*-

试采用设计模式描述算术表达式(不含圆括号)的设计方案。算术表达式是由加、减、乘、除和操作数构成的表达式,操作数假定为实数。

● 算术表达式采用逆波兰式表示时不用括号,可以利用 (20) 进行求值。与逆波兰式 ab-cd+* 对应的中缀表达式是 (21) 。(20)A .数组B .栈C .队列D .散列表(21)A.a-b+c*dB.(a_b)*c+dC.(a-b)*(c+d)D.a-b*c+d

●算术表达式采用逆波兰式表示时不用括号,可以利用(20)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是 (21) 。(20)A.数组B.栈C.队列D.散列表(21)A. a-b+c*dB.(a-b)*c+dC.(a-b)*(c+d)D. a-b*c+d

阅读以下说明和流程图(如图1所示),回答问题1至问题4。【说明】本流程图是将中缀表示的算术表达式转换成后缀表示。如中缀表达式(A-(B*C+D)*E)/(F+G))的后缀表示为ABC*D+E*-FG+/为了方便,假定变量名为单个英文字母,运算符只有+、-、*、/(均为双目运算符,左结合),并假定所提供的算术表达是非空且语法是正确的。另外,中缀表示形式中无空格符,但整个算术表达式以空格符结束。流程图中使用的符号的意义如下:数组 IN[]存储中缀表达式;数组 POLISH[]存储其后缀表达式;数组 S[]是一个后进先出栈;函数PRIOR(CHAR)返回符号CHAR的优先级,各符号的优先级见表2:填充流程图中①的判断条件。

阅读以下说明和图4-6,回答问题1至问题4。【说明】本流程图(如图4-6所示)是将中缀表示的算术表达式转换成后缀表示。如中缀表达式 (A-(B*C+D)*E)/(F+G)的后缀表示为ABC*D+E*-FG+/。为了方便,假定变量名为单个英文字母,运算符只有+、-、*、/(均为双目运算符,左结合),并假定所提供的算术表达式非空且语法是正确的。另外,中缀表示形式中无空格符,但整个算术表达式以空格符结束。流程图中使用的符号的意义如下。. 数组IN[]存储中缀表达式。. 数组POLISH[]存储其后缀表示。. 数组S[]是一个后进先出栈。函数PRIOR(CHAR)返回符号CHAR的优先级,各符号的优先级如表4-4所示。填充流程图中①的判断条件。

逆波兰式的特点是:表示时可以不用括号,而且可以用基于(106)的求值过程进行计算。与逆波兰式ab-cd+*对应的中缀表达式是(107)。A.栈B.队列C.符号表D.散列表

●试题一阅读以下说明和流程图(如图1所示),回答问题1至问题4,将答案写在答卷的对应栏内。【说明】本流程图是将中缀表示的算术表达式转换成后缀表示。如中缀表达式(A-(B*C+D)*E)/(F+G))的后缀表示为ABC*D+E*-FG+/为了方便,假定变量名为单个英文字母,运算符只有+、-、*、/(均为双目运算符,左结合),并假定所提供的算术表达是非空且语法是正确的。另外,中缀表示形式中无空格符,但整个算术表达式以空格符结束。流程图中使用的符号的意义如下:数组IN[]存储中缀表达式;数组POLISH[]存储其后缀表达式;数组S[]是一个后进先出栈;函数PRIOR(CHAR)返回符号CHAR的优先级,各符号的优先级见表2:【问题1】填充流程图中①的判断条件。【问题2】写出子程序A的功能,并顺序写出实现该功能的操作【问题3】写出子程序B的功能,并顺序写出实现该功能的操作。【问题4】中缀表达式(A+B-C*D)*(E-F)/G经该流程图处理后的输出是什么?【流程图】图1

若某算术表达式用二叉树表示如下, 则该算术表达式的中缀式为( ), 其后缀式为(请作答此空)。A.abc+-d*B.abcd*+-C.ab-c+d*D.abcd+*-

算术表达式采用后缀式表示时不需要使用括号,使用( )就可以方便地进行求值。a-b(c+d)(其中,-、+、*表示二元算术运算减、加、乘)的后缀式为( ),与该表达式等价的语法树为(请作答此空)。

某算术表达式用二叉树表示如下,该算术表达式的中缀式为( ),其后缀式为(请作答此空)。A.abc+-d*B.abcd*+-C.ab-c+d*D.abcd+*-

算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(1)处应选择()A、数组B、栈C、队列D、散列表

表达式采用逆波兰式表示时可以不用括号,而且可以用基于__(1)__的求值过程进行计算,与逆波兰式ab+c*d+对应的中缀表达式是__(2)__。空白(1)处应选择()A、栈B、队列C、符号表D、散列表

中缀表达式A-(B+C/D)*E的后缀表达式形式是()。A、AB-C+D/E*B、ABC+D/-E*C、ABCD/E*+-D、ABCD/+E*-

中缀表达式3*(X+2)-5所对应的后缀表达式为()。

后缀算术表达式24 8 + 3 * 4 10 7 - * /所对应的中缀算术表达式为(),其值为()。

下列有关VB表达式的说法中,错误的是()A、在表达式中可以出现上下标B、表达式中所有运算符都不能省略C、括号必须是圆括号且成对出现D、运算符乘和除分别用“*”和“/”表示

单选题算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(2)处应选择()Aa-b+c*dB(a-b)*c+dC(a-b)*(c+d)Da-b*c+d

单选题表达式采用逆波兰式表示时可以不用括号,而且可以用基于__(1)__的求值过程进行计算,与逆波兰式ab+c*d+对应的中缀表达式是__(2)__。空白(2)处应选择()Aa+b+c*dB(a+B.*c+dCC.(a+*(c+D.Da+b*c+d

单选题中缀表达式A-(B+C/D)*E的后缀表达式形式是()。AAB-C+D/E*BABC+D/-E*CABCD/E*+-DABCD/+E*-

填空题后缀算术表达式24 8 + 3 * 4 10 7 - * /所对应的中缀算术表达式为(),其值为()。

单选题假设栈初始为空,将中缀表达式a/b+(c*d+e*f)/g转化为等价后表达式过程中,当扫描到f时,栈中的元素依次为:A+(*-B+(-*C/+(*-*D/+-*

单选题表达式采用逆波兰式表示时可以不用括号,而且可以用基于__(1)__的求值过程进行计算,与逆波兰式ab+c*d+对应的中缀表达式是__(2)__。空白(1)处应选择()A栈B队列C符号表D散列表

单选题下列有关VB表达式的说法中,错误的是()A在表达式中可以出现上下标B表达式中所有运算符都不能省略C括号必须是圆括号且成对出现D运算符乘和除分别用“*”和“/”表示

单选题算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(1)处应选择()A数组B栈C队列D散列表

填空题中缀表达式3*(X+2)-5所对应的后缀表达式为()。