- 3
- 0
- 约1.24万字
- 约 17页
- 2016-10-15 发布于辽宁
- 举报
毕业论文设计-—算数表达式的求解课程设计报告
合肥学院
计算机科学与技术系
课程设计报告
20 12 ~20 13 学年第 2 学期
课程 数据结构与算法 课程设计名称 算数表达式的求解 学生姓名 周丽娟 学号 1104012013 专业班级 11计本3班 指导教师 李红
20 13 年 3 月
【问题描述】
(算数表达式的求解)给定一个算数表达式,通过程序求出最后的结果。
【要求】
从键盘输入要求解的算术表达式;
采用栈结构进行算数表达式的求解过程;
能够判断算数表达式的正确与否;
对于错误表达式给出提示;
对于正确表达时给出最后的结果。
问题分析和任务定义
有题目可知,程序要求给定一算数表达式并计算最后的结果,我们知道,在高级语言中,任何一个表达式都是有操作数、运算符和界限符组成。在计算过程中,还要考虑表达式中有无括号以及左右括号之分。由于运算符有优先级的高低,因此一个算数表达是不可能总是按顺序执行。
通过以上可知,可以用栈来实现运算符的优先级完成算术表达式的求解。
为实现算法的优先级,设置两个栈:一个称为操作数栈opnd,用以寄存操作数和运算结果,另一个为操作符栈optr,用以寄存运算符。
该算法的基本思想是:
首先置操作数栈opnd为空栈,表达式结束符“#”为操作符栈optr的栈底元素。
(2)依次读入表达式中每个字符,若为操作数,则进opn
原创力文档

文档评论(0)