c++ 高手帮忙啊 !~~~

来源:百度知道 编辑:UC知道 时间:2024/06/25 22:31:59
根据用户输入的表达式进行计算。可进行加减乘除运算。
比如:用户输入3+4,你就得出结果7;若输入2.5*3,你就得出结果7.5,
同志们 最好是给我编一个 谢谢啊 同志们

刚好半年前有个类似的应用,当时我有个简单的做法:
把+-*/^作为运算符,其中-+赋予优先值1,*/赋予优先值3,^赋予优先值4,0123456789.作为数字字符,()作为优先值附加项,其中(优先值5,)优先值-4。
然后通过查找输入中的运算符和()来分割字符串,将数字和运算符分别排成队列,根据运算符本身的优先值以及()的附加来计算每个运算符最后的优先值,然后优先值最高的运算符取其左右两边的数字先进行计算,得到的结果取代原两个数字的位置,消去那个运算符,继续寻找最高优先值的运算符进行计算直到没有运算符出现。
当然啦,输入校验很重要一定要做好的
=========================================
楼主啊,不能偷懒的,可以给你思路但是不能代劳

需要用到函数的重载
重载简单的说:就是定义两个名字一样的函数
但是:参数类型不同
比如:一个为int 一个为 long
调用函数的时候,编译器会根据你的参数类型确定调用哪个函数

表达式求解。。

数据结构的 课后题。。。

网上很多答案的。。自己搜索一下。。