开发工具:
文件大小: 108kb
下载次数: 0
上传时间: 2009-09-10
详细说明: 目 录 摘 要 1 前 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 3 2. 各模块的伪码算法 5 3. 函数的调用关系图 9 4. 调试分析 10 5. 测试结果 11 6. 源程序(带注释) 14 总 结 22 参考文献 23 致 谢 24 摘 要 目前,计算器应用很广泛,本程序是关于这方面的,其主要功能是进行简单的四则运算 ,其特点之一是支持带括号的四则运算;二是用到栈的一些相关操作,不但对操作有提示,还对与异常输入信息报错。 通过该题目的设计过程,可以加深理解线性表及 栈的逻辑结构、存储结构,掌握线性表及栈上基本运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。 关键字:堆栈,初始化栈,入栈,出栈。 前 言 很多涉及计算器程序的的算法都是以栈的相关操作为基础,通过计算器的设计,有利于在学习中更好的理解栈及其相关的操作。 通过对计算器计算过程演示,看到了到它的一些性能及相关优势。 我们在写程序时,大框架已成的情况下,仍然发现有些错误很难找到,对于这样的问题,可以利用计算机纠错功能,先运行,再根据题提示修改和完善程序。 在计算器用到的算法中,c语言算法可读性很强,一方面,是因为c语言是高级语言,是面向程序员的语言,二是c语言的功能是很完备的,可以达到事半功倍的效果,和其他语言相比量是比较少。栈的应用使该程序更出色。 正 文 1. 采用类c语言定义相关的数据类型 计算器的演示功能如下: A. 提示输入格式 B. 提示输入 C. 显示输入信息 D. 对有异常的输入报错并重新输入 E. 使用顺序栈实现数据的输入 (1)/*定义堆栈*/ typedef struct{ double data[M]; int top; }Stack; (2)/*初始化堆栈*/ InitStack(Stack *s) { s->top=0; } (3)/*判断栈是否为空*/ int StEmpty(Stack *s) { if(s->top==0) { return 1; } else { return 0; } } (4)/*入栈操作*/ StPush(Stack *s,double x) { if(s->top==M) { printf("The stack is overflow!"); } else { s->top=s->top+1; s->data[s->top]=x; } } ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.