表达式求值c++数据结构课设报告借鉴.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
![preview](https://dl-preview.csdnimg.cn/73237007/0001-b74460724575ea3e923f7b663635d03c_thumbnail.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
表达式求值C++数据结构课设报告借鉴 本课设报告主要讲述了使用C++语言设计和实现表达式求值系统的思路和步骤。该系统能够对用户输入的合法的算术表达式进行计算,返回正确的结果,並且能够处理包括加、减、乘、除、括号等运算符,操作数要求在实数范围内,并且能够对异常表达式给出错误提示。 一、设计课题 表达式求值是数据结构课程设计的重要组成部分,该系统的设计目标是实现对用户输入的合法的算术表达式的计算。系统能够对包括加、减、乘、除、括号等运算符的表达式进行计算,并且能够返回正确的结果。 二、需求分析 系统的需求分析结果表明,系统需要能够对用户输入的合法的算术表达式进行计算,包括加、减、乘、除、括号等运算符,并且能够返回正确的结果。系统还需要能够处理异常表达式,并给出错误提示。 三、算法设计 系统的算法设计主要基于栈的数据结构,使用两个栈:操作数栈(OPND)和运算符栈(OPTR)。算法的实现步骤如下: 1. 首先,置操作数栈为空栈,表达式起始符#为运算符栈的栈底元素。 2. 依次扫描表达式中每个字符,若是操作数则进OPND栈;若是运算符,则和OPTR栈的栈顶运算符比较优先权后作相应操作,直至整个表达式求值完毕。 3. 先做一个适合个位的+-*/运算,然后考虑到对n位和小数点的运算。 系统的模块间调用关系为:调用主程序模块————>输出模块。 四、ADT描述 系统使用了一个抽象数据类型(ADT)SqStack,用于实现栈的数据结构。SqStack的数据对象为D={ia |ia ∈ElemSet,i=1,2,,n, n ≧0},基本操作包括InitStack、GetTop、Push、Pop、In和Precede等。 五、主要函数模块说明 系统的主要函数模块包括: 1. 数据类型:SqStack1和SqStack2,用于实现栈的数据结构。 2. Precede函数,用于判断运算符的优先权,返回优先权高的。 3. EvaluateExpression函数,用于计算表达式的最终结果。 六、测试结果 系统的测试结果表明,系统能够正确地计算用户输入的合法的算术表达式,并且能够处理异常表达式,并给出错误提示。 七、结论 本课设报告的设计和实现了一个表达式求值系统,使用C++语言,能够对用户输入的合法的算术表达式进行计算,返回正确的结果,並且能够处理包括加、减、乘、除、括号等运算符,操作数要求在实数范围内,并且能够对异常表达式给出错误提示。该系统的设计和实现对数据结构课程设计的学习和应用有重要的参考价值。
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![text/x-c++](https://img-home.csdnimg.cn/images/20210720083646.png)
![synapse3](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/release/download_crawler_static/73237007/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/73237007/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/73237007/bg3.jpg)
![](https://csdnimg.cn/release/download_crawler_static/73237007/bg4.jpg)
![](https://csdnimg.cn/release/download_crawler_static/73237007/bg5.jpg)
剩余22页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 1
- 资源: 7万+
![benefits](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-1.c8e153b4.png)
![privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-2.ec46750a.png)
![article](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-3.fc5e5fb6.png)
![course-privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-4.320a6894.png)
![rights](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-icon.fe0226a8.png)
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- arcgis server10.4.1 永久授权
- code前端编码学习笔记
- GRM: Generalized Relation Modeling for Transformer Tracking结构图
- 海信智能电视刷机数据 LED42K3110(0000) 生产用软件数据 务必确认机编一致 强制刷机 整机USB升级程序
- vue,react,小程序日历框架.zip
- 21a35826-11e2-4322-92b5-eff82004befe.html
- win redis解压即用
- C#开发学习 - 基于.net5的后端快速,轻量,高效开发框架.zip
- 基于AI大模型实现一键生成高清短视频
- 一款让你同时与多个AI模型对话的软件
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)