资源描述
数据结构课程设计报告实验一 算术表达式求解目录一 问题描述及分析 p11问题描述 p12需求分析 p1二 功能模块及数据结构描述 p11数据结构描述 p12模块描述 p2三主要算法流程描述 p3四使用说明 p5五调试分析说明 p6一 问题描述及分析1问题描述以字符序列的形式从键盘输入语法正确的、不含变量的整数表达式,实现对算术四则混合运算表达式的求值。2需求分析自己设计界面,使用适当的数据结构对运算符、操作作数进行处理。 3运行要求.Windows xp/2003/win 7.VS 2010运行库二 功能模块及数据结构描述1数据结构描述int a2002;表达式元素分类存放数组,第一列存放表达式元素的类别(1-6,分别代表:+,-,*,/,(,)。),第二列存放表达式各元素。int p2002表达式经过处理,转换为逆波兰式存放数组,原理同上。int zhan11000逆波兰转换模拟栈。double zhan21000逆波兰求解运算模拟栈。2模块描述图1.1 常规信息集C#有关程序及的常规信息,可通过特性值修改,由编译环境vs2010自动生成图1.2 有关程序集有关程序及信息,由编译环境vs2010自动生成图1.3 图形算法文件Form1.cs:为程序核心算法,其中包括界面设计,算法设计。Program.cs:为程序入口文件,记录程序的入口点。由于本程序核心算法没有用到子程序和子函数调用,所以没有对子函数或子程序的介绍。输入表达式串对表达式串逐个判别对其进行逆波兰转换表达式是否读完开始将其入栈求解结果输出结束表达式是否完全转换是否为实数转换为实型三主要算法流程描述图1.4 核心算法流程四使用说明1系统文件说明图1.5 运行文件本系统主程序。2程序界面(vs2010)图1.6 程序主界面3使用说明:输入表达式:图1.7 说明描述点击“计算”按钮:图1.8 说明描述结果输出:图1.9 说明描述五调试分析说明表1.1 调试遇到的问题及解决方案遇到问题分类解决方法键入的表达式串无法正确生成逆波兰式,提示运行错误。C语言基础在已完成分类的二维数组an2的首尾分别加上左右括号,把表达式作为一个整体,后期处理不会出现越界等情况。二维数组定义,赋值出错C#语言基础二维数组不能像以往C,C+语言那样定义,其格式形如:int, a = new int20, 2;点击按钮,无事件触发C#语言基础程序中组件添加代码没有与组件属性中的姓名编号相对应,无法触发对应事件,通过更改程序中组件添加代码的姓名编号,得以解决。程序无法进行形参传递C#语言基础定义共有的全局变量,通过实体对象去调用,问题得以解决六参考文献1、 严蔚敏,吴伟民,数据结构(C语言版)M,北京:清华大学出版社 2、 严蔚敏,数据结构习题集与上机指导M,北京:清华大学出版社3、 徐德民,最新C语言程序设计M,电子工业出版社,19924、 张国峰,C+语言及其程序设计教程M,电子工业出版社,1992
展开阅读全文