课程设计简易计算器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
石家庄铁道大学课程设计
课程设计题目
单位
专业
学号
学生姓名
指导教师
完成日期年月日
摘要
课程设计语言类课程的指导思想:使学生通过学习高级编程语言的知识、编程技术和基本算法,掌握课程设计的思想和方法,具备利用计算机求解实际问题的能力,能灵活运用高级语言进行程序设计。
其实认真学习一门语言并不难,关键是所追求的学习方法和途径。通过C 语言程序设计,可以使我们掌握软件开发过程的难题分析、系统设计、程序编码、测试程序等基本方法和技能。同时,还能加强我们的时间管理意识,锻炼对难题的发现、分析和处理能力。我认为遇到难题并不可怕,可怕的是你不去解决,这可能是C语言课程设计的主要目的之一。
现时学习生活中,常会遇到一些数目较大数据繁杂的数值运算,徒手运算起来很困难,这时候我们就必须用到计算器。人们对计算的要求不断提高,普通的功能简单的仅能进行四则运算的计算工具已经不能满足需要,需要一种能进行多种计算。现在已经有一些功能较为强大、涵盖面较广的计算软件,而且各种平台的小工具仍不断出现。这些大大方便了我们的生活给我们更多的选择和实现方式。本程序的编写基础是Tubro 汉化版,它在tubro c的原有基础上实现了多汉字的支持方便了我们的使用。生成的程序可移植性强兼容性好稳定!本程序实现了加、减、乘、除、求幂、求模,求平方根,求Sin,求Cos,求Log10,求阶乘,取整,求正切,以及进制之间的相互转换。它可以直接输入数学表达式,不需要任何转换,就可以直接输出数学四则运算的结果。但是,每次只能运算一个表达式,按 CE清空后再计算下一组式子。本程序在进制转换方面有一些漏洞,但一般的进制转换结果还是准确的。
目录
第1章选题的意义···········错误!未定义书签。自我介绍···············错误!未定义书签。选题·················错误!未定义书签。第2章系统功能需求分析········错误!未定义书签。系统的基本要求············错误!未定义书签。数据结构设计及用法说明········错误!未定义书签。
功能模块··············错误!未定义书签。第3章系统设计············错误!未定义书签。流程图···············错误!未定义书签。数据结构··············错误!未定义书签。中心算法说明············错误!未定义书签。第4章系统实现············错误!未定义书签。第5章总结··············错误!未定义书签。独特设计··············错误!未定义书签。致谢词···············错误!未定义书签。主要参考文献:···········错误!未定义书签。程序代码:·············错误!未定义书签。
第1章选题的意义
自我介绍
我的名字是彭东林,就读于石家庄铁道大学,电0905-2班,电气与电子工程分院。
选题
1.我选的题目是:简单计算器的设计
2.我选这道题的原因如下:
计算器对我们每一的学生都很熟悉,从初中到高中再到大学。但是我们只知道按下几个按钮计算器便会显示出结果,很少有学生分析过计算器究竟是如何运行的。C语言课程设计便是一个很好的机会,让我去亲自写计算器的运行代码,尽管是简单计算器的设计,但其背后的知识那是相当多的,对我是个挑战,我接受!
3.运用的数据结构和知识点
TuborC 绘图知识数学函数选择结构循环结构数组指针顺序结构进制间的转换
第2章系统功能需求分析
系统的基本要求
1. 算术运算功能。能够实现+、-、*、/、mod、int运算。
2. 函数运算功能。能够实现exp、ln、sin、x^y、log、cos、x^3、n!、tan、
x^2、1/x等运算。
3. 进制之间的转换功能。能够实现十六、十、二、八进制数据之间的转换。
4.通过键盘控制字符和数字的输入。
数据结构设计及用法说明
*/<>
像。
{
}
梁。
num=num+3*pow(16,cd1-j);
else
if(str7[i]=='4')
num=num+4*pow(16,cd1-j);
else
if(str7[i]=='5')
num=num+5*pow(16,cd1-j);
else
if(str7[i]=='1')
num=num+1*pow(16,cd1-j);
else
if(str7[i]=='6')
num=num+6*pow(16,cd1-j);
else
if(str7[i]=='7')
num=num+7*pow(16,cd1-j);
else
if(str7[i]=='8')
num=num+8*pow(16,cd1-j);
else
if(str7[i]=='9')
num=num+9*pow(16,cd1-j);
else
if(str7[i]=='A')
num=num+10*pow(16,cd1-j);
else
if(str7[i]=='B')
num=num+11*pow(16,cd1-j);
else
if(str7[i]=='C')
num=num+12*pow(16,cd1-j);
else
if(str7[i]=='D')
num=num+13*pow(16,cd1-j);
else
if(str7[i]=='E')
num=num+14*pow(16,cd1-j);
else
if(str7[i]=='F')
num=num+15*pow(16,cd1-j);
}
本段程序的作用是将二进制转化为十进制,可作为二进制转化为其他进制的桥梁。zj=num1;
result=0;