- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目一 简易算器
项目一 简易计算器
项目要求:
C语言具有功能强大,灵活,可移植性好等特点,可用其开发各类应用系统。本项目要求用C语言完成一个简易计算器的开发。相关要求如下:
能够实现两个数的算术运算功能(加、减、乘、除)。即依次输入第一个操作数、运算符、第二个操作数,然后输出运算结果。
例如:输入:2 + 5 输出:2+5 7
能实现单运算符表达式运算功能。
例如:输入:13*8
输出:13*8 104
开发工具与运行环境。
操作系统:windows xp/2000/ME等。
开发工具:VC++ 6.0。
附加功能。
实现各类进制之间的转换,输入/输出格式根据个人理解确定;
带函数功能;
良好的操作界面与提示信息Add是函数名,iNum1、iNum2是形式参数。函数的功能就是求两个int型数据的和,并将所求的和返回给主调函数。
函数调用
不管是系统函数还是用户自定义函数,一旦定义好了之后,只需要按照格式进行调用即可。调用格式如下:
函数名(实际参数列表);
函数调用过程:首先将实际参数的值依次传递给形式参数变量,然后运行函数体语句,最后返回主调函数,如果有return 语句则由些返回,并且将返回值返回给主调函数,如果没有,则从函数最外层的“}”返回到主调函数。
如:iResult add 56,78 ;
就是对add()函数的调用,首先将实参78传递给形式参数变量iiNum2,将56传递给形式参数变量iNum1;然后执行函数体,计算两个整数的和,最后由return语句返回所求的和134。本例最后是将134赋给变量iResult。
函数调用一定注意是将实际参数的值依次传递给形式参数变量。
函数说明
通常函数的定义是放在被调用之后,所以需要在被用之前对此函数进行声明以告诉编译系统函数的返回值以及形式参数。声明格式如下:
[函数返回值类型符] 函数名(形式参数列表/形式参数类型列表);
如:int add int iNum1,int iNum2 ;或者是int add int ,int ;
注:函数的说明一定要放在函数被调用之前,一般放在main 之前。
函数设计
要设计一个函数,首先要确定函数的功能;然后是确定函数的形式参数,即函数需要的输入数据;再确定函数的返回值,即输出结果,也就是函数调用之后希望得到的结果;最后根据上述信息,设计函数的算法。
例:请设计一个函数,计算n!。
分析:
功能:求任意数的阶乘;
输入:n,即要求阶乘的那个数,整型;
输出:n!,长整型;
算法:
A1:设定循环控制变量的初值为1,存放阶乘变量的初值也为1;
A2:求当前循环控制变量所对应值的阶乘;
A3:循环控制变量加1;
A4:判断循环控制变量的值是否超过n,如果是的,则结果循环,转A5,否则转A2;
A5:返回所求的n!。
根据上述分析,编写代码如下:
long int factorial int iNum long lFact 1;
int iRep 1;
for ;iRep n;iRep++
{
lFact* iRep; return lFact ; 项目总体设计:
项目总体设计思想。模块化的程序设计思路。根据项目要求,将需要实现的功能分解为多个模块,各模块要求内聚性高,偶合性低,具有单入口和单出口。
系统工作流程。
模块划分
主函数模块 main
显示主界面 菜单 模块(disp)
基本算术运算模块 base_cal
单运算符表达式运算模块 exp_cal
进制转换模块 num_conver
界面设计
本系统由于比较简单,所以用户界面只有主菜显示一个界面,其它模块功能直接通过提示符显示相关提示信息。主界面菜单如下:
模块设计、代码编写与调试:
模块设计中,采用自顶向下,逐步细化的方法,每个模块从输入、输出和算法三个方面进行分析与设计。
主函数模块(main)
输入(形参):无。
输出(返回值):无。
算法:
A1: 调用主界面显示模块;
A2: 等用户输入功能选择;
A3:根据用户的选择,调用相应的模块;
A3.1:调用基本算术运算模块;
A3.2:调用单运算符表达式运算模块;
A3.3:调用进制转换模块;
A3.4:退出系统
A4:返回A1。
代码编写:
main char cChoice;
disp ; //显示主界面 菜单
scanf “%c”,cChoice ;//等待用户选择功能模块代号
while 1 switch cChoice //调用相应的模块
{
case ‘1’: base_cal ,break;
case ‘2’: exp_cal ,break;
case ‘3’: num_conver ,break;
case ‘0’:exit 0 ,break;
}
system “cls” ;//清屏
您可能关注的文档
最近下载
- 新修订《交通运输行政执法程序规定》全文学习解读PPT课件(带内容).pptx VIP
- CECS246-2008 给水排水工程顶管技术规程.pdf VIP
- 一年级科学上册 第一课准备课课件1 湘科版[共16页].pptx VIP
- 《飞机上应急医疗》课件——现场包扎技术.pptx VIP
- 2023北京东城五年级(下)期末语文试卷含答案.docx VIP
- SONY索尼 α7 II(ILCE-7M2)说明书.pdf VIP
- 班级管理与班主任工作-新教师培训.ppt VIP
- 中职 图形图像处理(Photoshop CS5)PS(第1章)教学课件 高教版.ppt VIP
- 能源转化与利用教学课件.ppt VIP
- 2023北京朝阳五年级(下)期末语文试卷含答案.docx VIP
文档评论(0)