1 / 14
文档名称:

C语言程序设计大作业设计说明书-简单计算器.doc

格式:doc   大小:625KB   页数:14页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言程序设计大作业设计说明书-简单计算器.doc

上传人:6188 2017/5/26 文件大小:625 KB

下载得到文件列表

C语言程序设计大作业设计说明书-简单计算器.doc

相关文档

文档介绍

文档介绍:1. 概述: 本程序是在 C++ 环境下开发的一款集整数与小数的四则运算和求余运算为一体的简单计算器。主要运用了赋值、计算、选择结构( switch 语句实现多分支选择结构)、条件运算、循环计算、函数调用等原理。 2. 程序概要设计: 前实现的功能: 程序已经可以完成整数、小数的基本加减乘除;整数基本求余运算;二进制, 八进制,十进制,十六进制的相互转换,并可以对输入者的输入错误提出错误警告;程序可以循环运行,也可以自我实现退出菜单的功能(需要按 2次回车)。目前发现的 BUG 有: 1 、在整数输入数字的时候,如果输入的是小数的话会一直循环菜单,不会出现结果,也不会提示输入者输入错误,也不会有结果。 2 、在整数求余功能中,如果输入的是小数或者输入不合理也会出现一直循环菜单的情况,同样不会提示输入者输入错误,也不会有结果。目前没有实现的功能有: ,不可以计算它的原码、补码和反码。 , 小数的基本运算和整数求余的运算出现错误无法提示,函数不是十分完整。 3. 全部进制的函数输入的数字个数都是有限制(数字个数不能大于 100 ),超范围就会输出错误结果,无法实现无限制的输入而得出正确结果。 4. 每次算完第一次不能按回车,只能按其他按键,否则会退出,因为按两次回车就会退出程序。 5. 每次算完,按非回车键都会出现一级菜单,有点繁琐,再次选择整数、小数、进制运算。流程图: 开始输入1 到3 进行功能选输入1 到5 进行功能选择 1. 整数四则运算及求余输入 2 个操作 1. 加法 2. 减法 3. 乘法 4. 除法 5. 求余判断除数为 0 Y 输出输入错误输入两个操作 N 输出结果输入1到4 进行功能选择 4. 除法判断除数为 0 Y 输出输入错误输入两个操作 N 输入 2 个操作输出结果输出结果输出结果输入 1 到 11 进行功能选 2. 小数四则运算 3.. 进制运算输入操作数输出结果结束 3. 程序详细设计: 在主函数中设置了全局变量,以实现功能选择,并用 char 函数实现循环输入。运用 dowhile 语句控制结束程序,即在运算过后,如由键盘输入回车键则结束程序。之后进入功能选择菜单,先调用写好的 menu 函数(回车 2次可退出程序)。输入提示及输入控制: 若输入的数字不是 1-3 ,则提示输入错误,重新输入: (运用选择结构进行判断) 其中,整数、小数、及进制转换计算功能分别使用了另一个 switch 语句嵌套, 实现选择功能。整数的加减乘除: 运用基本的加减乘除的函数完成,输入和输出的数字为整型。将输入的数字赋值到变量中,在让变量在程序进行相关的基本运算,输出结果即可。小数的加减乘除: 运用基本的加减乘除的函数完成,输入和输出的数字都双精度浮点型。将输入的数字赋值到变量中,在让变量在程序进行相关的基本运算,输出结果即可。整数求余运算: 运用%计算来完成,将输入的数字赋值到变量中,在让变量在程序进行%的运算。得出的值就是所求的余数,输出结果即可。二进制转换八进制: 这个是对输入的数字进行判断,因为二进制只能输入 0和1。二进制转八进制时,利用了二进制转十进制做桥梁,最后再十进制转八进制。二进制转换十进制这也是对输入的数字进行判断,只能为 0和1。二进制转换十六进制对输入的数字进行求余,因为输入的数字只能是 0和1,所以最后的输入数字被 10整除,结果不会大于 1, 也就是按照这个原理来实现输入错误进行提醒, 如果结果不大于 1,就会实现下面的函数。先将二进制转换为十进制,再十进制转换为十六进制,对10,11,12,13, 14,15进行 switch 语句的转换,分别转换为 A,B,C,D,E,F ;最后输出为十六进制。八进制转换二进制输入的数字在 0到7 的组合或单个数之间,再对输入的数字对 10 求余。再对2求余。八进制转换十进制输入的数字在 0到7 的组合或单个数之间,输入的数字对 10 求余,再经过一下程序得出结果。八进制转换十六进制输入的数字在 0到7的组合或单个数之间,先由八进制转换到十进制,再由十进制转换到十六进制, 对10,11,12,13,14,15进行 switch 语句的转换, 分别转换为 A,B,C,D,E,F ;最后输出为十六进制。十六进制转换为二进制输入的数字要在 0到9 之间,字母要在 A(a )到 F(f )之间,否则会出现错误。再利用这个程序输出数字,先由十六进制转换为十进制,十进制再转换为二进制。十六进制转换为八进制输入的数字要在 0到9 之间,字母要在 A(a )到 F(f )之间,否则会出现错误。先由先由十六进制转换为十进制,十进制再转换为八进制。十六进制转换为十进制输入的数字要在 0到9 之间,字母要在 A(a )到 F(f )之间,否则会