Advertisement

数据结构利用栈进行中缀表达式的计算

阅读量:

基于栈的中缀算式表达式求值

  • 问题:
    • 要求:

    • 启动软件

    • 调试过程

    • 函数调用

      • 将字符序列转化为浮点数值
        • atof函数:
        • strtod函数:
        • memset函数
    • 符号优先级判定表

    • 程序实现:

问题:

对一个中缀形式的算术表达式进行输入,并计算其对应的数值结果。所涉及的运算符号包含加、减、乘、除、左括号、右括号以及等号,参与运算的数据类型为double型正数。(要求:必须直接处理中缀表达式,不得将其转换为后缀或前缀形式后再执行计算,仅需考虑二元运算的情况即可。)

要求:

(1)新建一个名为kcsj12.cpp的文件,并编写代码以完成特定功能;
(2)输入内容包含多组数据,每组数据占据一行,对应一个算术表达式,每个表达式均以“=”作为结尾。当输入的表达式仅包含一个“=”时,表示输入过程结束。参与运算的数据类型为double;
(3)输出内容:针对每组输入数据生成一行输出,显示该表达式的计算结果。所有结果需保留两位小数。
输入示例与输出示例如下:

输入:
2+2=
20*(4.5-3)=

输出:
4.00
30.00

全部评论 (0)

还没有任何评论哟~