田甜数据结构课程设计报告_第1页
田甜数据结构课程设计报告_第2页
田甜数据结构课程设计报告_第3页
田甜数据结构课程设计报告_第4页
田甜数据结构课程设计报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 数据结构课程设计报告课程设计题目:(计算机运算符的优先级比较)学 生 姓 名 :田甜专 业 :信息管理与信息系统班 级 :0930602指 导 老 师 :徐青2011年 6 月 19 一、 课程设计目的:课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。二:题目简介: 设计一个简单的计算机运算界面,实现计算机的简单的”+”,”-“,”*”,”/”运算,以及运算符(+,-,*,/,())的优先级比较。三:流程图或者模块图:入栈模块流程图:返回错误判断栈的长度 栈以满 栈 未 满字符入

2、栈栈的长度加1 出栈模块流程图:判断栈的长度返回错误 栈已满 栈 未 满栈的长度减1字符出栈判断优先模块图:判断优先级“+,-,*,/,(),#”返回“”四则运算模块流程图:输出结果X*Y输出结果X+Y四则运算(X,Y) 符号为“*” 符号为“+”输出结果X-Y 符号为“/” 符号为“-”输出结果X/Y四:程序清单和运行结果:#include#include#include typedef struct/建立一个栈char a100;int top; sequence_stack;void Showsystem()/显示系统主界面printf(nnnnnn);printf(tt#*#n);pr

3、intf(tt# 0 0 0 #n);printf(tt# 计算器的简单运算! #n);printf(tt#-#n);printf(tt# 加减乘除 #n);printf(tt#*#n);printf(tt# #n);printf(tt# #n);printf(tt# #n);printf(tt#*#n);printf(tt#请按回车键进入菜单);getchar();void init(sequence_stack *st)/初始化栈st-top=0;int is_operation(char op)/判断是否为运算符号switch(op)case +:case -:case *:case /

4、:return 1;default :return 0;int priority(char op) /要压入栈的优先级 switch(op)case #:return -1;case (:return 0;case +:case -:return 1;case *:case /:return 2;default :return -1;void postfix(char e, char f) / 将字符串变为后缀表达式char opst100;int t,i=0,j=0,top=0;opsttop=#;top+;while(ei!=#)if(ei=0&ei=9)|ei=.) fj+=ei;/遇到

5、数字和小数点直接写入后缀表达式/else if(ei=()/遇到左括号进入操作符栈/opsttop=ei;top+;else if(ei=)/遇到右括号将其对应的左括号的操作符全部写入后缀表达式/t=top-1;while(opstt!=()fj+=opst-top;t=top-1;top-;else if(is_operation(ei)fj+= ;/用空格分开两个操作符/while ( priority(ei)=0&f*i=0&f*i=0&fi结束 1-继续n);printf(tt请输入:);scanf(%d,&n);getchar();finish();运行结果:Enter键进入:计算结果:按1继续:按0 结束:五:小结(收获和体会);在这次的课程设计当中遇到了很多的麻烦,刚开始的时候是什么都不会,在寻求同学的帮助下了解了一些代码的意思,但是有些还是不太明白,指导老师问的问题第一次也回答不上来,觉得自己把数据结构的相关知识都忘记了 ,后来查看书才了解了一些运算符的优先级比较,以及一些算法的计算,课程设计当中指导老师把相关的知识点都会问及我们,只有回答出来了才可以过,在自己以及同学的帮助下,认真仔细的查看源代码的意思,以及源代码的相关知识终于了解了通过栈来表达运算符的优先级,以及四则基本运算符的运算方法,在指导老师的询问当中自己会很紧张,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论