- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计---表达式求值
课 程 设 计 说 明 书
课程名称: 数据结构
设计题目: 表达式求值
院 系:
学生姓名:
学 号:
专业班级:
指导教师:
2011年 6 月 25 日课 程 设 计 任 务 书
设计题目
表达式求值
学生姓名
所在院系
计科学院
专业、年级、班
设计要求:
计算表达式手工录入,计算结果必须正确
支持两位以上的整数和浮点数的运算
运算符优先级表可在程序中直接通过代码初始化
能够检查表达式是否合法,对于错误的表达式要能够给出错误原因。
学生应完成的工作:
设计一个能够计算表达式的程序,要求能够对包含加、减、乘、除、括号运算符的表达式进行计算,并能显示出一定的错误及错误分析。
参考文献阅读:
严蔚敏 吴伟民 编著《数据结构》(C语言版) 清华大学出版社 2010年10月
(美)克林伯格 编著《算法设计》 清华大学出版社 2007年6月
王晓东 编著《算法设计与分析》(第三版) 电子工业出版社 2007年5月
工作计划:
1、第一周的第一天:小组布置设计题目;说明进度安排。
2、第一周的第二天:小组审题,查阅资料,进行设计前的必要资料准备。
3、第一周的第三天、第四天、第五天:程序编写、上机调试
4、第二周的第一天至第三天: 上机调试程序、结果分析。
5、第二周的第四天: 撰写设计报告。
6、第二周的第五天: 设计答辩及成绩评定。
任务下达日期: 2011 年 6 月 13 日
任务完成日期: 2011 年 6月 25 日
指导教师(签名): 学生(签名):
表达式求值
摘 要:
表达式求值是程序设计语言编译中的一个最基本的问题。它的实现是栈应用的一个典型例子。我们使用的是一种简单直观,广为使用的算法—“算符优先法”。
要把一个表达式翻译成正确求值的一个机器指令序列,或者直接对表达式求值,首先要能够正确解释表达式。要知道算法四则运算即(1)先乘除,后加减;(2)从左到右;(3)先括号内,后括号外。算法优先级法就是根据这个运算优先级的规定来实现对表达式的编译或解释执行的。
任何一个表达式都是由操作数,运算符和界限符组成的,我们称之它们为单词。一般地,操作数既可以是常数也可以是被说明为变量或常量的标识符;运算符可以分为算术运算符,关系运算符和逻辑运算符三类;基本界限符有左右括号和表达式结束符等。
关键词:
表达式 栈(出战,入栈) 括号匹配 符号优先级 运算
目 录
一.设计背景………………………………………………………………3
1.1.目的 ……………………………………………………………3
1.2.背景 ……………………………………………………………3
二.设计方案………………………………………………………………3
方案实施 ……………………………………………………………4
3.1运算……………………………………………………………… 4
结果与结论 …………………………………………………………6
4.1.运算结果…………………………………………………………6
4.2.结论………………………………………………………………7
收获与致谢……………………………………………………………7
5.1.收获………………………………………………………………7
5.2.致谢………………………………………………………………7
六.参考文献 ……………………………………………………………8
八.指导教师评语 ………………………………………………………9
一. 设计背景
1.1.目的
通过课程设计,巩固和加深对栈的理论知识的理解;掌握现实复杂问题的分析和解决方法;提高利用计算机分析解决综合性实际问题的基本能力。
1.2.背景
“数据结构”是计算机程序设计的重要理论技术基础,它不仅是计算机学科的核心课程,而且已成为其他理科专业的热门选修课。栈是重要的线性结构,从数据结构角度看,栈也是线性表,其特点在于栈的基本操作是线性表操作的子集,它的操作受限的线性表,因此,可称为限定性的数据结构。但从数据类型角度看,它是和线性表大不相同的一类重要的抽象数据类型。由于栈广泛应用在各种软件系统中,因此在面向对象的程序设计中,它
文档评论(0)