c++mfc计算器设计报告

c++mfc计算器设计报告

ID:9286889

大小:39.92 KB

页数:12页

时间:2018-04-26

c++mfc计算器设计报告_第1页
c++mfc计算器设计报告_第2页
c++mfc计算器设计报告_第3页
c++mfc计算器设计报告_第4页
c++mfc计算器设计报告_第5页
资源描述:

《c++mfc计算器设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、课程实验报告课程名称C++面向对象程序设计实验名称实验五设计一个MFC计算器实验目的及要求1.学习使用visualC++的MFC开发程序的步骤2.综合运用所学的类、继承和多态的知识开发程序3.进一步熟悉程序调试方法实验环境Visualc++6.0实验内容1.利用MFC的向导创建基于对话框的应用程序,添加按钮,编辑框等控件2.实现算术加减乘除的运算3.选做添加计算三角函数、对数、指数、进制转换的功能算法描述及实验步骤1.利用MFCAPPWIZARD向导建立程序框架,选择Dialogbased,建立一个基于对话框的程序,项目名为mycal2.利用资源编辑器,建立对话框。在在控件工具中

2、选择“editbox”,添加一个编辑框。鼠标右键点击该编辑框,在弹出快捷菜单中选择“properties”,设置id属性3.在控件工具中选择“button”,添加一个按钮,鼠标右键单击该编辑框,在弹出快捷菜单中选择“properties”,设置id值和caption属性4.依次添加若干编辑框和按钮,分别用于加减乘除操作和相应的数据操作。5.给编辑框连接变量。在编辑框处点击右键选择“classwizard”,在弹出的对话框中选择“membervariables”,找到编辑框id,选择“addvariable”按钮,添加cedit类型变量m_display.另外需要给CMyCalDl

3、g类添加3个变量,以满足具体计算过程doublem_curNum;doublem_preNum;charop;6.给按钮连接代码。调试过程及实验结果总结实验过程中遇到的困难主要是对MFC如何添加控件,如何给按钮添加响应函数不熟悉,后来看书,网上找资料,逐渐理解了MFC的基本操作。写完之后试验了一下,发现不能连续运算,即不断利用当前计算出的结果作为第一个数,用户在输入另一个数,然后输出结果。后来通过请教同学,上网查资料,了解了一些基本操作,然后通过改进自己的计算器,使它更为智能。开始将存储运算符的字符设置为’a’,每次按运算符按钮的时候先判断op是不是’a’,如果是a说明前面没有运

4、算符要计算,这时要去保存第一个数,如果是别的运算符,这时要去保存第二个数,然后把第一个数更改为两个数运算之后的结果,这样就能连续运算(但是没有运算符优先级),同时也能将按等号之后的结果直接作为第一个参数参加运算。附录//lylDlg.cpp:implementationfile//#include"stdafx.h"#include"lyl.h"#include"lylDlg.h"#include"afx.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///

5、////////////////////////////////////////////////////////////////////////////CAboutDlgdialogusedforAppAboutclassCAboutDlg:publicCDialog{public:CAboutDlg();//DialogData//{{AFX_DATA(CAboutDlg)enum{IDD=IDD_ABOUTBOX};//}}AFX_DATA//ClassWizardgeneratedvirtualfunctionoverrides//{{AFX_VIRTUAL(CAboutD

6、lg)protected:virtualvoidDoDataExchange(CDataExchange*pDX);//DDX/DDVsupport//}}AFX_VIRTUAL//Implementationprotected://{{AFX_MSG(CAboutDlg)//}}AFX_MSGDECLARE_MESSAGE_MAP()};CAboutDlg::CAboutDlg():CDialog(CAboutDlg::IDD){//{{AFX_DATA_INIT(CAboutDlg)//}}AFX_DATA_INIT}voidCAboutDlg::DoDataExchange

7、(CDataExchange*pDX){CDialog::DoDataExchange(pDX);//{{AFX_DATA_MAP(CAboutDlg)//}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CAboutDlg,CDialog)//{{AFX_MSG_MAP(CAboutDlg)//Nomessagehandlers//}}AFX_MSG_MAPEND_MESSAGE_MAP()////////////////////////////////////

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。