- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计大作业设计说明书修改版计算器设计
高级语言程序设计大作业设计说明书
简单计算器
学 院 电子信息工程学院
专业班级 11级通信工程4班
学生姓名 彭艺
学 号 201130095302
指导老师 张伟娜
概述:
本程序是在C++6.0环境下开发的一款集整数与小数的四则运算和求余运算为一体的简单计算器。主要运用了赋值、计算、选择结构(switch语句实现多分支选择结构)、条件运算、循环计算、函数调用等原理。
程序概要设计:
前实现的功能:
程序已经可以完成整数、小数的基本加减乘除;整数基本求余运算;二进制,八进制,十进制,十六进制的相互转换,并可以对输入者的输入错误提出错误警告;程序可以循环运行,也可以自我实现退出菜单的功能(需要按2次回车)。
目前发现的BUG有:
1、在整数输入数字的时候,如果输入的是小数的话会一直循环菜单,不会出现结果,也不会提示输入者输入错误,也不会有结果。
2、在整数求余功能中,如果输入的是小数或者输入不合理也会出现一直循环菜单的情况,同样不会提示输入者输入错误,也不会有结果。
目前没有实现的功能有:
1.给出一个二进制数,不可以计算它的原码、补码和反码。
2.整数,小数的基本运算和整数求余的运算出现错误无法提示,函数不是十分完整。
3.全部进制的函数输入的数字个数都是有限制(数字个数不能大于100),超范围就会输出错误结果,无法实现无限制的输入而得出正确结果。
4.每次算完第一次不能按回车,只能按其他按键,否则会退出,因为按两次回车就会退出程序。
5.每次算完,按非回车键都会出现一级菜单,有点繁琐,再次选择 整数、小数、进制运算。
流程图:
程序详细设计:
在主函数中设置了全局变量,以实现功能选择,并用char函数实现循环输入。
运用do while语句控制结束程序,即在运算过后,如由键盘输入回车键则结束程序。
之后进入功能选择菜单,先调用写好的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)之间,否则会出现错误。
4.使用情况
菜单:
1.一级菜单
正常使用:
输入错误:
2.二级菜单
输入错误:
进制运算:
整数加法:
整数减法:
整数乘法:
整数除法:
整数除法除数为0:
整数求余:
您可能关注的文档
- C13监理细则——101电气工程.doc
- C17煤掘进队工程合同.doc
- C1驾照考试理论题库.doc
- c13半导体三极管0.ppt
- C5二工区土方开挖施工方案522.doc
- C6140车床拨叉CADCAM课程设计说明书.doc
- C9煤运输石门掘进队工程合同.doc
- CAD使用命令大全.ppt
- CASS70断面法土方计算步骤.doc
- CCC认证培训资料1.doc
- 安全生产法规知识试卷含刑法环保职业病等内容.docx
- 2025高考数学专项讲义 第08讲 圆锥曲线中的焦点弦、焦半径及定比分点问题(高阶拓展、竞赛适用)(教师版).pdf
- 2025高考数学专项讲义 第08讲 新高考新结构命题下的立体几何解答题综合训练(学生版).pdf
- 2025版餐厅门店承包经营合作协议.docx
- 2025版车辆租赁与共享经济合作合同范本.docx
- 2025版绿色环保建筑承包合同标准范本.docx
- 2025版餐厅与旅行社旅游市场拓展合作合同.docx
- 2025版精装修大平方楼房买卖合同书.docx
- 2025版社区食堂厨师团队承包与便民餐饮服务合同.docx
- 2025版社区食堂厨师团队承包与便民餐饮服务合同.docx
文档评论(0)