电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构课程设计说明书(表达式求值)VIP免费

数据结构课程设计说明书(表达式求值)_第1页
1/14
数据结构课程设计说明书(表达式求值)_第2页
2/14
数据结构课程设计说明书(表达式求值)_第3页
3/14
**大学 数据结构 课 程 设 计 说 明 书 学生姓名: *** 学 号: * * * * * * * * * * 学 院 : **********学 院 专 业 : 网络工程 题 目 : 利用栈求表达式的值 成绩 指导教师 ****** 2009 年 7 月 9 日 1 .设计目的 数据结构课程设计的目的是,通过设计掌握数据结构课程中学到的基本理论和算法并综合运用于解决实际问题中,它是理论与实践相结合的重要过程。设计要求学会如何对实际问题定义相关数据结构,并采用恰当的设计方法和算法解决问题,同时训练学生进行复杂程序设计的技能和培养良好的程序设计习惯。 2 . 设计内容和要求 利用栈求解表达式的值。 设计内容: 1) 建立试题库文件,随机产生n 个题目; 2) 题目涉及加减乘除,带括弧的混合运算; 3) 利用栈求解表达式的值; 4) 随时可以退出; 5) 保留历史分数,能回顾历史,给出与历史分数比较后的评价 基本要求: 1)系统功能的完善; 2)代码中有必要的注释 3.本设计所采用的数据结构 栈的数组表示方法(静态分配整型指针) typedef struct { typedef data[MAXSIZE]; int top; }; 4.功能模块详细设计 1.功能一:中缀表达式转化为后缀表达式; 2.功能二:后缀表达式求值; 3.功能三:文件读写; 4.功能四:作业评分; 5.功能五:历史成绩本次成绩比较; 6.功能六:输入“~”符号退出程序 4.1 详细设计思想 1.首先实现表达式的求值: 要用栈求解一个表达式,就要将这个表达式翻译成正确求值的一个机器指令序列,即正确解释表达式,了解算术四则混合运算的规则: (1).先乘除,后加减; (2).从左算到右; (3).先括号内,后括号外 再根据这个运算优先的规定来实现对表达式的编译或解释执行. 任何一个表达式都是由操作数(st)和操作符(op)组成的,根据四则运算基本法则,在运算的每一步中,任意两个相继出现的操作符op1 和 op2 之间的优先关系最多有以下3 种: (1).op1 的优先级低于op2 (2).op1 的优先级等于op2 (3).op1 的优先级小于op2 为实现运算符优先,可以使用两个操作栈,操作栈st,用于存放操作数及运算结果;操作栈op,用于存放操作符。 算法思想: (1).首先将中缀表达式转换成后缀表达式: <1>.从左至右依次扫描中缀表达式的每一个字符,如果是数字字符和“.” ,则直接将它们写入后缀表达式中。 <2>.如果遇到的是开括号“(”,则将它压入一个操作符栈中,它表明一个新的计算层次...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构课程设计说明书(表达式求值)

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部