- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
. .
课程设计名称:C语言课程设计
课程设计题目:简单计算器程序
. .
目 录
TOC \o 1-3 \h \z \u 22494 第1章 需求分析 1
656 1.1 设计要求 1
4312 1.2 任务 1
17689 第2章 总体设计 2
11386 2.1设计简介及设计方案论述 2
17820 2.2功能模块层次图 2
23044 第3章 详细设计 3
6359 3.3 由(后缀)逆波兰表达式计算中缀表达式原理 8
31849 3.3.1算法描述 8
10620 第4章 调试分析 10
13083 4.1 程序设计中所遇到的错误及犯错的原因 10
23337 4.2 错误的解决方法 10
28144 第5章 用户手册 11
18363 总 结 15
30940 参考文献 16
2164 附 录(程序清单) 17
. .
第1章 需求分析
1.1 设计要求
用 C 语言数据结构实现程序设计;
(2)利用结构体、栈、进行相关信息处理;
系统的各个功能模块要求用函数的形式实现;
(4)界面简单.可操作性高。
1.2 任务
定义一个结构体类型数组.输入 0~9 及+、--、*等符号的信息.将其信息存储起来;
(2)输入简单的加减乘除算术计算式.并在屏幕上显示逆波兰(后缀式)表达式和计算结果;
(3)编写代码;
(4)程序分析与调试。
说明:
本课程设计将实现一个简单计算器。在功能上尽量模仿 windows 的计算器。系统界面不做牵制要求。该程序能实现标准型中+、-、*、/、(、)、.、的 混 合运算表达式(一般意义上的中缀表达式).将其转换成逆序波兰表达式(后缀表达式) 并计算输出结果。在进行运算后可以选择继续运算或者结束当前运算。即时准确地获得 需要的计算的结果.充分降低了数字计算的难度和节约了时间.对人们的生活有一定的帮助。
第2章 总体设计
2.1设计简介及设计方案论述
逆波兰表达式又叫做后缀表达式。在通常的表达式中.二元运算符总是置于与之相 关的两个运算对象之间.所以.这种表示法也称为中缀表达式。波兰逻辑学家 J.Lukasiewicz 于 1929 年提出了另一种表示表达式的方法。按此方法.每一运算符都置 于其运算对象之后.故称为后缀表达式。
后缀表达式的优点是显而易见的. 编译器在处理时候按照从左至右的顺序读取逆波 兰表达式.遇到运算对象直接压入堆栈.遇到运算符就从堆栈提取后进的两个对象进行计算.这个过程正好符合了计算机计算的原理。后缀表达式比前缀表达式更加易于转换.并且它的最左面一定为数字.这一点在实 际编程的时候就会体会到它的好处了。 逆波兰表达式有一个更大的优点.就是拆括号.根据运算符的级别将中缀表达式转 换成逆波兰表达式后.运算顺序就已经替代了运算符的级别.这样也避免了括号提高运 算级别的特殊处理。
简单计算器2.2功能模块层次图
简单计算器
求 值 计 算 系
求
值
计
算
系
统
表
达
式
格
式
转
换
系统
将算术表达式转化为逆波兰表达式 计算逆波兰表达式的值
第3章 详细设计
3.1 栈的定义与使用
首先定义两个栈.一个字符型.一个双精度型.程序代码如下 :
Struct
{
char data[MaxSize]; // 存放表达式的字符数组
int top; //栈顶指针
}Sym; /*符号*/ //作为存放运算表达式的栈使用
struct
{
double data[MaxSize]; //存放运算结果的数组
int top; //栈顶指针
}Num; /*数*/ 存储逆波兰表达式(后缀式)计算器的运算数 //作为存放运算结果的栈使用
void InitStack()
{ Sym.top=Num.top=-1; } //栈的初始化
void SymPush() //压栈
{
if(Sym.topMaxSize-1)
{ Sym.data[++Sym
您可能关注的文档
- (部编)三年级(上册)语文课内阅读理解.doc
- (超赞)一年级看图写话.ppt
- [工程类试卷]2011年注册岩土工程师(专业知识)上午试卷真题试卷和答案与解析.doc
- “拍照赚钱”的任务定价分析的论文(电子版).doc
- 《电荷库仑定律》教学设计说明书.doc
- 《电路分析基础》课程标准[详].doc
- 《混凝土结构设计基本原理》课程设计报告书.doc
- 《线性规划》在线作业题目与答案.doc
- 《信息技术与影响》教学设计说明书.doc
- 3_5动量碰撞练习题.doc
- 中国行业标准 GM/T 0126-2023HTML密码应用置标语法.pdf
- 《JJF 2121-2024恒转速源校准规范》.pdf
- 餐饮服务中20条处理要点.docx
- 《GM/T 0011-2023可信计算 可信密码支撑平台功能与接口规范》.pdf
- 《JJF 2134-2024旋转流变仪校准规范》.pdf
- JJF 2121-2024恒转速源校准规范.pdf
- 计量规程规范 JJF 2121-2024恒转速源校准规范.pdf
- 《JJF 2118-2024压力式六氟化硫气体密度控制器校验仪校准规范》.pdf
- JJF 2134-2024旋转流变仪校准规范.pdf
- 计量规程规范 JJF 2134-2024旋转流变仪校准规范.pdf
文档评论(0)