




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1. 题目:简单计算器2. 实验目的:模仿日常生活中所用的计算器,自行设计一个简单的计算器程序,实现简单的计算功能。3. 实验主要硬件软件环境:Window 7Visual C+ 6.04. 实验内容:(1) 体系设计:程序是一个简单的计算器,能正确输入数据,能实现加、减、乘、除等算术运算,能进行简单三角运算,运算结果能正确显示,可以清楚数据等。(2) 设计思路:1) 先在Visual C+ 6.0中建立一个MFC工程文件,名为calculator.2) 在对话框中添加适当的编辑框、按钮、静态文件、复选框和单选框3) 设计按钮,并修改其相应的ID与Caption.4) 选择和设置各控件的单击鼠
2、标事件。5) 为编辑框添加double类型的关联变量m_edit1.6) 在calculatorDlg.h中添加math.h头文件,然后添加public成员。7) 打开calculatorDlg.cpp文件,在构造函数中,进行成员初始化和完善各控件的响应函数代码。(3) 程序清单:l 添加的public成员:double tempvalue; /存储中间变量double result; /存储显示结果的值int sort; /判断后面是何种运算:1.加法 2.减法 3.乘法 4.除法int append; /判断后面是否添加数字l 成员初始化:CCalculatorDlg:CCalculato
3、rDlg(CWnd* pParent /*=NULL*/): CDialog(CCalculatorDlg:IDD, pParent)/AFX_DATA_INIT(CCalculatorDlg)m_edit1 = 0.0;/AFX_DATA_INIT/ Note that LoadIcon does not require a subsequent DestroyIcon in Win32m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);tempvalue=0;result=0;sort=0;append=0;l 各控件响应函数代码:void
4、CCalculatorDlg:OnButton1() /按钮“1”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+1; m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton2() /按钮“2”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*1
5、0+2;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton3() /按钮“3”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+3;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton4() /按钮“4”/ TODO: Add your control notification han
6、dler code hereif(append=1)result=0;result=result*10+4;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton5() /按钮“5”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+5;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton6
7、() /按钮“6”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+6;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton7() /按钮“7”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+7;m_edit1=result;append
8、=0;UpdateData(FALSE);void CCalculatorDlg:OnButton8() /按钮“8”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+8;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnButton9() /按钮“9”/ TODO: Add your control notification handler code hereif(append=1
9、)result=0;result=result*10+9;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnBUTTONzero() /按钮“0”/ TODO: Add your control notification handler code hereif(append=1)result=0;result=result*10+0;m_edit1=result;append=0;UpdateData(FALSE);void CCalculatorDlg:OnBUTTONequal() /按钮“=”/ TODO: A
10、dd your control notification handler code hereswitch(sort)case 1:result=result+tempvalue;break;case 2:result=tempvalue-result;break;case 3:result=result*tempvalue;break;case 4:result=tempvalue/result;break;m_edit1=result;sort=0;append=1;UpdateData(FALSE);void CCalculatorDlg:OnBUTTONclean() /按钮“C”/ T
11、ODO: Add your control notification handler code heretempvalue=0;result=0;m_edit1=0.0;UpdateData(FALSE);void CCalculatorDlg:OnBUTTONplus() /按钮“+”/ TODO: Add your control notification handler code heresort=1;tempvalue=result;m_edit1=0;append=1;void CCalculatorDlg:OnBUTTONminus() /按钮“-”/ TODO: Add your
12、 control notification handler code heresort=2;tempvalue=result;m_edit1=0;append=1;void CCalculatorDlg:OnBUTTONmulti() /按钮“*”/ TODO: Add your control notification handler code heresort=3;tempvalue=result;m_edit1=0;append=1;void CCalculatorDlg:OnBUTTONdiv() /按钮“/”/ TODO: Add your control notification
13、handler code heresort=4;tempvalue=result;m_edit1=0;append=1;void CCalculatorDlg:OnRadio1() /按钮“Sin”/ TODO: Add your control notification handler code herem_edit1=sin(result);UpdateData(FALSE);void CCalculatorDlg:OnRadio2() /按钮“Cos”/ TODO: Add your control notification handler code herem_edit1=cos(re
14、sult);UpdateData(FALSE);void CCalculatorDlg:OnRadio3() /按钮“Tan”/ TODO: Add your control notification handler code herem_edit1=tan(result);UpdateData(FALSE);void CCalculatorDlg:OnRadio4() /按钮“Log10”/ TODO: Add your control notification handler code herem_edit1=log10(result);UpdateData(FALSE);(4) 程序调试
15、:简单计算器:测试与思考: 5. 小结:A. 在做上面那个简单计算器的时候,遇到的问题很少,而且差不多都是些很小的问题,很容易就解决了B. 刚开始,在老师没讲课之前,不知道如何设置响应事件,经老师讲解后,很快就解决了C. 在运行的调试的时候,发现计算器的减法与除法的功能出错,原来是减数与被减数、除数与被除数的位置互换了;还有,连续点击“=”时显示结果会不停变动,解决方法是:加“sort=0;”语句;另外,在点击“=”后,再点击数字键时,会发现点击的相应数字会显示在原显示结果的后面,解决方法是:加“append=1;”语句D. 后来,在做后面的测试与思考时,遇到的问题就很多了。其中最棘手的就是Backspace键和连续四则运算的实现,其
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑工地施工安全措施不到位免责条款协议
- 堡坎承包工程合同
- 环保产业园区入驻企业合作协议
- 标准房屋买卖合同
- 项目解决方案实施与进度跟踪报告
- 高级烹饪食材采购及供应责任免除协议书
- 北京液化石油气钢瓶租赁合同8篇
- 高中信息技术浙教版:4-3 以三维全景图形式发布-教学设计
- 教学计划(教学设计)-2024-2025学年外研版(三起)英语四年级上册
- 电子证据存证保全协议
- GB/T 44590-2024天然林保护修复生态效益评估指南
- 民用无人机操控员执照(CAAC)考试复习重点题及答案
- 第20课清朝君主专制的强化 教案
- 幼儿园中班安全《不动手打人》课件
- 骨科睡眠护理
- 2025年高考语文复习备考复习策略讲座
- 2024至2030年中国聚硫橡胶行业市场现状分析及未来前景规划报告
- 天津市河西区2023-2024学年高一上学期1月期末化学试题(原卷版)
- 2025高考语文步步高大一轮复习讲义65练答案精析
- 部编版八年级语文下册全册单元教材分析
- 粤剧中国汉族传统戏剧人类非物质文化遗产代表作宣传课件
评论
0/150
提交评论