课程设计—简单计算器.doc
《课程设计—简单计算器.doc》由会员分享,可在线阅读,更多相关《课程设计—简单计算器.doc(21页珍藏版)》请在三一办公上搜索。
1、目录简单计算器设计1一、系统开发的背景1二、系统分析与设计1(一)系统功能要求1(二)系统模块结构设计1三、系统的设计与实现4(一)菜单选项:void menu1();5(二)标准型:menu4()、add()、sub()、pro()、div();5(三)科学型:menu2()、add1()、sub1()、pro1()、div1()、fun();8四、系统测试11(一)测试menu4()、add()、sub()、pro()、div()函数11(二)测试fun()、add1()、sub1()、pro1()、div1()函数12五、总结13六、附件(代码、部分图表)13(一)程序代码13(二)部分
2、图表20简单计算器设计一、系统开发的背景当今社会是信息社会,科技经济高速发展的社会!为了更方便人们的工作生活和加速人们处理信息的速度,计算器应运而生。由于它体积小巧,携带方便,价格便宜,构造简单等诸多的优点成为人们生活中的必备品! 随着科技的发展计算器的种类变得更多,功能变得更强大,体积变得更小!电脑的出现改变人们的生活习惯,很多事情都可以电脑来完成!电脑的更大一个优点就是可以通过软件的应用无限的延伸电脑功能的外延!因此我们将用我们学习的c语言编写一个简易的计算器程序!实现简单的初步的计算功能! 二、系统分析与设计(一) 系统功能要求可以实现两个数加、减、乘、除的基本运算同时也可以实现多个数的
3、加、减、乘、除的混合运算以及实现了一些基本的进制之间的互相转换。1、进制转换(包括二进制、十进制、十六进制);2、混合运算可以实现用上一次的计算结果接着用进行下一步运算;3、两个数之间的基本运算只能计算两个数;(二) 系统模块结构设计通过对系统功能的分析,简单计算器功能如图1所示。简单计算机系统标准型科学型算术运算进制转换算术运算图1简单计算器系统功能图通过上图的功能分析,把整个系统划分为标准型、科学型2大模块,标准型之中只有一个算数运算模块,科学型之中包括算数运算和进制转换2个模块:1.标准型,该模块主要实现:两个数加、减、乘、除的基本运算,借助函数add ()、sub()、pro()、di
4、v()来实现;2.科学型,该模块主要实现:多个数的加、减、乘、除的混合运算以及实现了一些基本的进制之间的互相转换,算术运算借助函数add1 ()、sub1()、pro1()、div1()来实现;进制转换借助函数fun()来实现。三、 系统的设计与实现(一)菜单选项:void menu1();分析:首先输出表头,然后依次输出供用户选择的菜单。流程图如图2所示。简单计算器1、标准型2、科学型图2:void meun1()流程图该模块的具体代码如下所示。void menu1() printf( |=|n); printf( | 1.标准型; 5.科学型; |n); printf( |=|nn);(二
5、)标准型:menu4()、add()、sub()、pro()、div();分析:1.首先用menu4()输出供用户选择的加、减、乘、除四个菜单。流程图如图3所示。4、除法标准型1、加法2、减法3、乘法 图3:menu4()流程图该模块的具体代码如下所示。void menu4() printf( |=|n); printf( | 1.加法; 2.减法; 3.乘法; 4.除法 |n); printf( |=|nn);2.之后用add()、sub()、pro()、div()四个函数进行运算;流程图如图4所示。开始 输入两数a,b c=a+b输出c值结束图4:add()流程图3.sub()、pro()
6、、div()三个函数的流程图与add()函数相同,只需将图四中的处理框的表达式做相应的改动。该模块的具体代码如下所示。int add()int add(int x,int y); int a,b,c; printf(请输入所要计算的数); scanf(%d,%d,&a,&b); c=add(a,b); printf(计算结果是:%dn,c); return 0; int add(int x,int y)int z;z=x+y;return (z);float sub() float sub(float x,float y); float a,b,c; printf(请输入所要计算的数); sc
7、anf(%f,%f,&a,&b); c=sub(a,b); printf(计算结果是:%fn,c); return 0; float sub(float x,float y)float z;z=x-y;return (z); float pro() float pro(float x,float y); float a,b,c; printf(请输入所要计算的数); scanf(%f,%f,&a,&b); c=pro(a,b); printf(计算结果是:%fn,c); return 0; float pro(float x,float y)float z;z=x*y;return (z);f
8、loat div() float div(float x,float y); float a,b,c; printf(请输入所要计算的数); scanf(%f,%f,&a,&b); c=div(a,b); printf(计算结果是:%fn,c); return 0; float div(float x,float y)float z;z=x/y;return (z);(三)科学型:menu2()、add1()、sub1()、pro1()、div1()、fun();分析:1.首先用menu2()输出供用户选择的算术运算、与进制转换两个菜单。流程图如图5所示。科学型1.算数运算2进制转换图5:me
9、nu2()流程图该模块的具体代码如下所示。void menu2() printf( |=|n); printf( | 1.算术运算; 2.进制转换; |n); printf( |=|nn);2.之后用add1()、sub1()、pro1()、div1()四个函数进行运算;流程图如图6所示。输入数据开始Ybreakz=x+yc=getchar(+)NYbreakz=x-yc=getchar(-)NYbreakz=x*yc=getchar(*)NYz=x/ybreakc=getchar(/)Nbreak输入0输出结果结束图6:add1()流程图Sub1()、pro1()、div1()三个函数的流程
10、图与add()函数相同。该模块的具体代码如下所示。void add1(double x,double y)double n,z;char t,c;z=x+y;printf(=%lf,z);c=getchar();scanf(%c,&t);if(t!=0)scanf(%lf,&n);switch(t)case +:add1(z,n);break; case -:sub1(z,n);break;case *:pro1(z,n);break; case /:div1(z,n);break; case 0:return;break; / 返回一般计算void sub1(double x,double
11、y)double n,z;char t,c;z=x-y;printf(=%lf,z);c=getchar();scanf(%c,&t);if(t!=0)scanf(%lf,&n);switch(t)case +:add1(z,n);break;case -:sub1(z,n);break;case *:pro1(z,n);break;case /:div1(z,n);break;case 0:return;break; void pro1(double x,double y)double n,z;char t,c;z=x*y;printf(=%lf,z);c=getchar();scanf(%
12、c,&t);if(t!=0)scanf(%lf,&n);switch(t)case +:add1(z,n);break;case -:sub1(z,n);break;case *:pro1(z,n);break; case /:div1(z,n);break;case 0:return;break;void div1(double x,double y)double n,z;char t,c;z=x/y;printf(=%lf,z);c=getchar();scanf(%c,&t);if(t!=0)scanf(%lf,&n);switch(t)case +:add1(z,n);break;ca
13、se -:sub1(z,n);break;case *:pro1(z,n);break; case /:div1(z,n);break;case 0:return;break;四、系统测试(一) 测试menu4()、add()、sub()、pro()、div()函数图7 menu4()、add()、sub()、pro()、div()函数(二) 测试fun()、add1()、sub1()、pro1()、div1()函数 图8 add1()、sub1()、pro1()、div1()函数图9 fun()函数五、总结 系统完成了两数之间的加、减、乘、除最基本运算和多个数的加、减、乘、除的混合运算以及实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 简单 计算器
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-2386198.html