中缀表达式转为后缀的计算器解析.doc

计算机专业软件类课程实验报告 课程名称: 编译原理 实验题目: 中缀表达式转为后缀表达式 实验小组成员: 实验小组组长: 任课教师: 专业名称: 计算机科学与技术 班级名称: 计科1班 实验起止时间: 2014-6-2~2014-6-3 一、实验目的 1、要求设计交互界面,能输入能转换能输出,形式和风格自定。 2、掌握栈“后进先出”的特点。? 3、掌握栈的典型应用——中缀表达式转后缀表达式,并利用后缀表达式求值。? 实验内容 设计一个计算器,能够进行界面交互 能够将输入的中缀表达式转换为正确的后缀表达式, 根据得到的后缀表达式,求出表达式的值 三、实验 主要数据结构介绍 程序中创建两个队列Queue,一个队列用来存放中缀表达式,另一个队列用来存放后缀表达式; 2、同时,程序中需要创建两个栈Stack,一个在表达式转换时,用来存放运算符,一个在后缀表达式求值时,用来存放操作数 主要模块算法介绍 1、中缀表达式转为后缀表达式 (1)若取出的字符是数字,则分析出完整的运算数,该运算数直接送入S2栈 (2)若取出的字符是运算符,则将该运算符与S1栈栈顶元素比较,如果该运算符优先级大于S1栈栈顶运算符优先级,则将该运算符进S1栈,否者,将S1栈的栈顶运算符弹出,送入S2栈中,直至S1栈栈顶运算符低于(不包括等于)该运算符优先级,则将该运算符送入

文档评论(0)

1亿VIP精品文档

相关文档