c++实现从键盘上输入一个中缀算术表达式,程序可以在显示器上给出计算结果。 (2)
时间: 2023-09-07 11:04:08 浏览: 143
C++实现中缀算术表达式的计算
要实现从键盘上输入一个中缀算术表达式并计算结果,可以使用以下步骤:
1. 从键盘上接收用户输入的中缀算术表达式。
2. 将中缀表达式转换为后缀表达式,以便更容易进行计算。可以使用算法如下:
- 创建一个空栈,用于存储运算符和左括号。
- 创建一个空列表,用于存储后缀表达式。
- 依次遍历中缀表达式的每个字符:
- 如果是数字,直接添加到后缀表达式列表。
- 如果是运算符或括号:
- 如果栈为空或者当前字符为左括号"(",直接将字符入栈。
- 如果当前字符为右括号")",则从栈中弹出运算符并添加到后缀表达式列表,直到遇到左括号"("。
- 如果当前字符为运算符("+", "-", "*", "/"等):
- 如果栈顶元素为左括号"(",则将当前运算符入栈。
- 如果栈顶元素为优先级比当前运算符高的运算符,则从栈中弹出运算符并添加到后缀表达式列表,直到栈顶元素为优先级比当前运算符低或者遇到左括号"("。
- 将当前运算符入栈。
- 如果遍历完中缀表达式后,栈中仍有运算符,将其依次弹出并添加到后缀表达式列表。
3. 使用栈计算后缀表达式的值,以得到最终结果。可以使用算法如下:
- 创建一个空栈,用于存储数字和中间计算结果。
- 依次遍历后缀表达式的每个元素:
- 如果是数字,直接将其入栈。
- 如果是运算符("+", "-", "*", "/"等),从栈中弹出两个数字进行计算,并将计算结果入栈。
- 遍历完后缀表达式后,栈顶即为最终结果。
4. 将最终结果输出到显示器上。
通过以上步骤,可以实现从键盘上输入一个中缀算术表达式,并在显示器上给出计算结果。
阅读全文