2、利用栈来完成下列表达式的求值: 3+3*(9-2*3)/3*(8-2*4)-9 要求:给出栈中数据的完整变化过程。
时间: 2024-05-29 17:11:05 浏览: 11
1. 数字3入栈,栈:3
2. 数字3入栈,栈:3 3
3. 数字9入栈,栈:3 3 9
4. 数字2入栈,栈:3 3 9 2
5. 栈顶元素2出栈,栈:3 3 9,计算2*3=6,将6入栈,栈:3 3 9 6
6. 栈顶元素9出栈,栈:3 3,数字6入栈,栈:3 3 6
7. 栈顶元素6出栈,栈:3 3,数字9入栈,栈:3 3 9
8. *符号入栈,栈:3 3 9 *
9. 数字3入栈,栈:3 3 9 * 3
10. *符号入栈,栈:3 3 9 * 3 *
11. 数字8入栈,栈:3 3 9 * 3 * 8
12. 数字2入栈,栈:3 3 9 * 3 * 8 2
13. 栈顶元素2出栈,栈:3 3 9 * 3 * 8,计算2*4=8,将8入栈,栈:3 3 9 * 3 * 8 8
14. 栈顶元素8出栈,栈:3 3 9 * 3 *,数字8入栈,栈:3 3 9 * 3 * 8
15. 栈顶元素3出栈,栈:3 3 9 *,数字8入栈,栈:3 3 9 * 8
16. *符号出栈,栈:3 3 9,栈顶元素8出栈,栈:3 3 9,计算3*8=24,将24入栈,栈:3 3 24
17. /符号入栈,栈:3 3 24 /
18. 数字3入栈,栈:3 3 24 / 3
19. *符号入栈,栈:3 3 24 / 3 *
20. 数字9入栈,栈:3 3 24 / 3 * 9
21. 栈顶元素3出栈,栈:3 3 24 / * 9,栈顶元素9出栈,栈:3 3 24 / *
22. 栈顶元素24出栈,栈:3 3 /,数字9入栈,栈:3 3 / 9
23. *符号出栈,栈:3 3,栈顶元素9出栈,栈:3 3,计算3*9=27,将27入栈,栈:3 27
24. -符号入栈,栈:3 27 -
25. 数字9入栈,栈:3 27 - 9
26. 栈顶元素-符号出栈,栈:3 27,栈顶元素9出栈,栈:3 27,计算27-9=18,将18入栈,栈:3 18
27. 最终结果为18。