最新mfc计算器的设计报告.doc
《最新mfc计算器的设计报告.doc》由会员分享,可在线阅读,更多相关《最新mfc计算器的设计报告.doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datemfc计算器的设计报告永磁同步电机( permanent magnet syn2MFC计算器课程设计题 目: MFC计算器设计 学 院: 计算机学院 姓 名: 学 号: 指导教师: 2015年5月20日-目录1概述31.1 课程设计目的31.2 课程设计内容32系统需求分析42.1 系统目标42.2 主体功能42.3 开发环境43 系统概要设计43.1 系统功能划44
2、系统详细设计74.1 设计步骤74.2 界面设计95 测试115.1 测试方案115.2 测试结果126 小结14参考文献14附 录15附录1 源程序清单15计算器的设计1概述 1.1 课程设计目的1、巩固并加深学生对C+语言程序设计知识的理解;2、培养学生面向对象的程序设计思想,使学生认识面向过程和面向对象两种设计方法的区别;3、进一步掌握和应用VC+ 6.0集成开发环境;4、提高运用C+语言解决实际问题的能力; 5、初步掌握开发小型实用软件的基本方法,能独立设计、实现基本的MIS系统;6、掌握书写程序设计开发文档的能力(书写课程设计实验报告)。1.2 课程设计内容课题名称:计算器的实现说明
3、:实现一个计算器。要求: 用“计算器”的标准视图执行简单的计算。2系统需求分析2.1 系统目标我们在学习生活中,常会遇到一些繁杂的数值运算,这时候我们就必须用到科学计算器,所以便着手开发了这个计算器程序,以便用于自己的学习工作。要计算功能有以下几个方面:加法,减法,乘法,除法,乘方。2.2 主体功能十进制数的加、减、乘、除、乘方简单计算。2.3 开发环境Windows操作系统,VC+ 6.0, OFFICE WORD3 系统概要设计3.1 系统功能划序号文件名主要功能备注1+加法求和两个操作数2-减法求差两个操作数3*乘法求积两个操作数4/除法求商两个操作数5S求平方根一个操作数6=等于7C寄
4、存器清零表3-1 系统功能表1) 假设执行操作“+”,先输入一个数,再输入“+”,再输入另一个数,最后输入“+”。整个功能“+”就执行完毕。四则代码如下void CCALDlg:OnButtonequal() / TODO: Add your control notification handler code hereUpdateData(TRUE); num2 =m_str; if(num2=0&ope=3)m_str1=除数不能为零;m_str =0; num1 = 0; num2 = 0;UpdateData(FALSE);else / int f = 0; switch (ope) /
5、加 case 0: m_str = num1 + num2; break; /减 case 1: m_str = num1 - num2; break; case 2: m_str = num1 * num2; break; case 3: m_str = num1 / num2; break; case 4:m_str = num1 * num1; UpdateData(FALSE); 4系统详细设计4.1 设计步骤打开Microsoft Visual C+ 6.0,在文件中点击新建,在弹出框内选择MFC AppWizardexe工程,输入工程名yeyahui及其所在位置,点击确定,如图4-
6、1所示。图4-1 新建MFC AppWizardexe工程将弹出MFC AppWizard-step 1对话框,选择基本对话框,点击完成,如图4-2所示。 图4-2基本对话框这样,MFC AppWizard就建立了一个基于对话窗口的程序框架,如图4-3所示。图4-3新建的对话框4.2 界面设计界面设计主要是创建控件,在图4-3所示的Resoure View选项卡中打开Dialog资源组,双击IDD_ZHOUTONG_DIALOG,在右边的窗口中显示出待编辑的对话框。开始摆放控件,包括编辑框和按钮的创建。按钮的创建以“1”为例进行介绍,其他按钮的创建可参照此进行操作。1)在图4-3中Contro
7、ls的“编辑框”按钮上单击鼠标左键,在对话框编辑窗口上合适的位置按下鼠标左键并拖动鼠标画出一个大小合适的编辑框。在编辑框上单击鼠标右键,在弹出的快捷莱单中选择属性选项,此时弹出Edit属性对话框,如图4-4所示,在该对话框中输入ID属性。 图4-4 Edit属性对话框2)在图4-2中Controls的“Button”按钮上单击鼠标左键,在对话框上的合适的位置上按下鼠标左键并拖动鼠标画出一个大小合适的下压式按钮。在按钮上单击鼠标右键,在弹出的快捷菜单中选择属性选项,此时也弹出Push Button属性对话框,如图4-5所示,在该对话框中输入控件的ID值和标题属性。图4-5 Push Button
8、属性按照上面的操作过程编辑其他按钮和编辑框等对象的属性。表4-1 各按钮和编辑框等对象的属性对象ID标题或说明编辑框IDC_EDIT2结果显示按钮IDC_BUTTON00按钮IDC_BUTTON11按钮IDC_BUTTON22按钮IDC_BUTTON33按钮IDC_BUTTON44按钮IDC_BUTTON55按钮IDC_BUTTON66按钮IDC_BUTTON77按钮IDC_BUTTON88按钮IDC_BUTTON99按钮IDC_BUTTONJIA+按钮IDC_BUTTONJIAN-按钮IDC_BUTTONMUL*按钮IDC_BUTTONDIV/按钮IDC_BUTTON10x2按钮IDC_BU
9、TTONCLACLAER按钮IDC_BUTTONEQUAL=完成后界面如图4-6所示。图4-6 设计界面5 测试5.1 测试方案先用标准型进行简单的四则运算:+ - * /,测试完成后,核对其计算结果的正确性。5.2 测试结果经测试标准型计算器,进行简单的四则运算,结果均正确,如图5-1所示。图5-1 四则运算,乘法测试结果图6 小结经过一个月的努力,课程设计基本完成了。在课程设计的实践中,学到很多有用的知识,也积累了不少宝贵的经验。课程设计是以一个计算器的实现为基础,掌握一个基于对话框的应用程序的编程方法以及对话框常用控件的高级编程。在课程设计中我了解到到对话框应用程序的编程模式、改变按钮的
10、客户区形状、在按钮客户区内作图及对话框的扩展等知识。在此期间,遇上了不少的技术难题,但是经过老师知道,难题还是一个个被解决了。经过设计的各个环节,从中学到了很多,锻炼了自己系统的设计的能力,从系统的需求到系统的功能,到系统的测试,到系统的发布,可以掌握到一个完全的过程,这样对我们以后在工作中或学习中得到很好的锻炼,为用VC+编辑软件奠定基础。参考文献1谭浩强.C程序设计(第三版)(M).北京:清华大学出版社,2005. 2谭浩强.C程序设计题解与上机指导(第三版) (M).北京:清华大学出版社,2005.3甄炜. C+语言和面向对象程序设计教程(M).北京:机械工业出版社,2005.附 录附录
11、1 源程序清单/ 计算器Dlg.cpp : implementation file/#include stdafx.h#include CAL.h#include CALDlg.h#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endif/ CAboutDlg dialog used for App Aboutclass CAboutDlg : public CDialogpublic:CAboutDlg();/ Dialog Data/AFX_DATA(CAboutDlg)en
12、um IDD = IDD_ABOUTBOX ;/AFX_DATA/ ClassWizard generated virtual function overrides/AFX_VIRTUAL(CAboutDlg)protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV support/AFX_VIRTUAL/ Implementationprotected:/AFX_MSG(CAboutDlg)/AFX_MSGDECLARE_MESSAGE_MAP();CAboutDlg:CAboutDlg() : CDialog(
13、CAboutDlg:IDD)/AFX_DATA_INIT(CAboutDlg)/AFX_DATA_INITvoid CAboutDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CAboutDlg)/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)/AFX_MSG_MAP(CAboutDlg)/ No message handlers/AFX_MSG_MAPEND_MESSAGE_MAP()/ CCALDlg dialogCCALDlg
14、:CCALDlg(CWnd* pParent /*=NULL*/): CDialog(CCALDlg:IDD, pParent)/AFX_DATA_INIT(CCALDlg)m_str = 0;m_str1 = _T();/AFX_DATA_INIT/ Note that LoadIcon does not require a subsequent DestroyIcon in Win32m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);void CCALDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoD
15、ataExchange(pDX);/AFX_DATA_MAP(CCALDlg)DDX_Text(pDX, IDC_EDIT2, m_str);DDX_Text(pDX, IDC_EDIT3, m_str1);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CCALDlg, CDialog)/AFX_MSG_MAP(CCALDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_BUTTON0, OnButton0)ON_BN_CLICKED(IDC_BUTTON1, OnButton1)O
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 mfc 计算器 设计 报告
限制150内