假设栈初始为空,将中缀表达式a/b-(c*d

2026-04-16 23:10:00来源: 网络

  考研的备考中,对于历年真题的复习,也是提升考试分数的重要方法。为了让大家更好的积累学习,小编为大家整理了历年考研真题,下面是关于“假设栈初始为空,将中缀表达式a/b-(c*d”,希望对大家有更好的帮助。

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

  A、 /-+*

  B、 -(+*

  C、 -(*+

  D、 /-(*+*

  5、试题答案:B

  试题解析:

  【考点】本题考查中缀表达式转后缀表达式的过程

  【解析】① 碰到“a”输出加入后缀表达式。② 碰到”/”入栈。③ 碰到“b”输出加入后缀表达式。④ 碰到“-”,此时栈中有运算符“/”,其优先级大于“-”,故“/”出栈,再将“-”入栈。⑤ 遇到左括号入栈。⑥ 遇到“c”输出加入后缀表达式⑦遇到“*”,此时栈中元素依次是“-(”,直接入栈“*”。⑧ 遇到“d”输出加入后缀表达式。⑨ 遇到“+”,此时栈中元素依次是“-( *”,由于栈顶元素“*”的优先级大于“+”,故“*”出栈,再将“+”入栈。⑩ 遇到“e”输出加入后缀表达式⑪遇到“*”,此时栈中元素依次是“-( +”,由于栈顶“+”优先级小于“*”,则“*”直接入栈。⑫ 遇到“f”,此时栈中的元素依次是“-( + *”。故本题选B。

  以上“假设栈初始为空,将中缀表达式a/b-(c*d”,更多关于考研真题内容将不断更新。



点击展开阅读全文