通俗易懂版基于MFC科学计算器.doc
《通俗易懂版基于MFC科学计算器.doc》由会员分享,可在线阅读,更多相关《通俗易懂版基于MFC科学计算器.doc(38页珍藏版)》请在三一办公上搜索。
1、2013/6/22作者编写的科学强大的易懂的新手入门的科学计算器,基于MFC编写的科学计算器指导教师对课程设计的评定意见搞 要 本课程设计是在基于对话框的应用程序中模拟一个计算器,本计算器可以进行十进制下的四则运算(加、减、乘、除)和四则混合运算,可以把十进制转化为二进制或十六进制,可以进行一些常用的函数运算(比如sin、cos、tan、cot、sqrt、ln等),还可以支持带“(”,“)”符号的表达式的计算。系统开发平台为Windows XP,程序设计设计语言采用Visual C+6.0,程序运行平台为Windows 98/2000/XP。程序通过调试运行,初步实现了设计目标。关键词 程序设
2、计;计算器;C+;1 引言 在现代社会中,计算器已经进入了每一个家庭,人们在生活和学习中经常需要使用到计算器,它的出现大大减少了人们在计算方面的工作量,可以说它在人们生活和学习中是不可缺少的。1.1 C+介绍C+语言的主要特点表现在两个方面,一是全面兼容C语言,二是支持面向对象的程序设计方法1。(1) C+是一个更好的C,它保持了C语言的优点,大多数的C程序代码略作修改或不作修改就可在C+的集成环境下调试和运行。这对于继承和开发当前已在广泛的软件是非常重要的,可以节省大量的人力和物力。(2) C+是一种面向对象的程序设计语言它使得程序的各个模块的独立性更强,程序的可读性和可移植性更强,程序代码
3、的结构更加合理,程序的扩充性更强。这对于设计、编制和调试一些大型的软件尤为重要。 (3) C+集成环境不仅支持C+程序的编译和调试,而且也支持C程序的编译和调试。通常,C+程序环境约定:当源程序文件的扩展名为c时,则为C程序;而当源程序文件的扩展名为cpp时,则为C+程序。(4) C+语句非常简练,对语法限制比较宽松,因此C+语法非常灵活。其优点是给用户编程带来书写上的方便。其缺点是由于编译时对语法限制比较宽松,许多逻辑上的错误不容易发现,给用户编程增加了难度。3以下是详尽的代码在C*Dlg添加下面代码,这个自己一定要看懂,里面是各个按钮的响应函数,不是叫你直接复制粘贴,而是一个个双击按钮添加
4、代码,最后成了以下的样式。/ text2Dlg.cpp : 实现文件/#include stdafx.h#include text2.h#include text2Dlg.h#include afxdialogex.h#includeatlsimpstr.h#ifdef _DEBUG#define new DEBUG_NEW#endif/ 用于应用程序“关于”菜单项的 CAboutDlg 对话框class CAboutDlg : public CDialogExpublic:CAboutDlg();/ 对话框数据enum IDD = IDD_ABOUTBOX ;protected:virtua
5、l void DoDataExchange(CDataExchange* pDX); / DDX/DDV 支持/ 实现protected:DECLARE_MESSAGE_MAP();CAboutDlg:CAboutDlg() : CDialogEx(CAboutDlg:IDD)void CAboutDlg:DoDataExchange(CDataExchange* pDX)CDialogEx:DoDataExchange(pDX);BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)END_MESSAGE_MAP()/ Ctext2Dlg 对话框Ctext2Dlg:C
6、text2Dlg(CWnd* pParent /*=NULL*/): CDialogEx(Ctext2Dlg:IDD, pParent), m_strResult(_T(), OperatorPressed(false), Restarted(false), s(0), m_Edit3(_T(), L(0), L1(0), PB(0), radio(0), m_strout(_T(), m_MM3(_T(), m_Inv(false)m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);void Ctext2Dlg:DoDataExchange(CData
7、Exchange* pDX)CDialogEx:DoDataExchange(pDX);DDX_Text(pDX, IDC_EDIT1, m_strResult);DDX_Text(pDX, IDC_EDIT3, m_Edit3);DDX_Text(pDX, IDC_MM3, m_MM3);BEGIN_MESSAGE_MAP(Ctext2Dlg, CDialogEx)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_0, &Ctext2Dlg:OnBnClicked0)ON_BN_CLICKED(IDC_
8、1, &Ctext2Dlg:OnBnClicked1)ON_BN_CLICKED(IDC_2, &Ctext2Dlg:OnBnClicked2)ON_BN_CLICKED(IDC_3, &Ctext2Dlg:OnBnClicked3)ON_BN_CLICKED(IDC_4, &Ctext2Dlg:OnBnClicked4)ON_BN_CLICKED(IDC_5, &Ctext2Dlg:OnBnClicked5)ON_BN_CLICKED(IDC_6, &Ctext2Dlg:OnBnClicked6)ON_BN_CLICKED(IDC_7, &Ctext2Dlg:OnBnClicked7)ON_
9、BN_CLICKED(IDC_8, &Ctext2Dlg:OnBnClicked8)ON_BN_CLICKED(IDC_9, &Ctext2Dlg:OnBnClicked9)ON_BN_CLICKED(IDC_POINT, &Ctext2Dlg:OnBnClickedPoint)ON_BN_CLICKED(IDC_ADD, &Ctext2Dlg:OnBnClickedAdd)ON_BN_CLICKED(IDC_SUB, &Ctext2Dlg:OnBnClickedSub)ON_BN_CLICKED(IDC_mul, &Ctext2Dlg:OnBnClickedmul)ON_BN_CLICKED
10、(IDC_DIV, &Ctext2Dlg:OnBnClickedDiv)ON_BN_CLICKED(IDC_EQUAL, &Ctext2Dlg:OnBnClickedEqual)ON_BN_CLICKED(IDC_BACKSPACE, &Ctext2Dlg:OnBnClickedBackspace)ON_BN_CLICKED(IDC_C, &Ctext2Dlg:OnBnClickedC)ON_BN_CLICKED(IDC_SIN, &Ctext2Dlg:OnBnClickedSin)ON_BN_CLICKED(IDC_COS, &Ctext2Dlg:OnBnClickedCos)ON_BN_C
11、LICKED(IDC_TAN, &Ctext2Dlg:OnBnClickedTan)ON_BN_CLICKED(IDC_SQRT, &Ctext2Dlg:OnBnClickedSqrt)ON_BN_CLICKED(IDC_LKOUHAO, &Ctext2Dlg:OnBnClickedLkouhao)ON_BN_CLICKED(IDC_RKOUHAO, &Ctext2Dlg:OnBnClickedRkouhao)ON_BN_CLICKED(IDC_PI, &Ctext2Dlg:OnBnClickedPi)ON_BN_CLICKED(IDC_INT, &Ctext2Dlg:OnBnClickedI
12、nt)ON_BN_CLICKED(IDC_MOD, &Ctext2Dlg:OnBnClickedMod)ON_BN_CLICKED(IDC_CE, &Ctext2Dlg:OnBnClickedCe)ON_BN_CLICKED(IDC_DAOSHU, &Ctext2Dlg:OnBnClickedDaoshu)ON_BN_CLICKED(IDC_JIAJIAN, &Ctext2Dlg:OnBnClickedJiajian)ON_BN_CLICKED(IDC_N, &Ctext2Dlg:OnBnClickedN)ON_BN_CLICKED(IDC_SQUARE, &Ctext2Dlg:OnBnCli
13、ckedSquare)ON_BN_CLICKED(IDC_CUBE, &Ctext2Dlg:OnBnClickedCube)ON_BN_CLICKED(IDC_TENX, &Ctext2Dlg:OnBnClickedTenx)ON_BN_CLICKED(IDC_EXP, &Ctext2Dlg:OnBnClickedExp)ON_BN_CLICKED(IDC_LOG, &Ctext2Dlg:OnBnClickedLog)ON_BN_CLICKED(IDC_SINH, &Ctext2Dlg:OnBnClickedSinh)ON_BN_CLICKED(IDC_COSH, &Ctext2Dlg:OnB
14、nClickedCosh)ON_BN_CLICKED(IDC_TANH, &Ctext2Dlg:OnBnClickedTanh)ON_BN_CLICKED(IDC_IN, &Ctext2Dlg:OnBnClickedIn)ON_BN_CLICKED(IDC_XY, &Ctext2Dlg:OnBnClickedXy)ON_BN_CLICKED(IDC_KAILIFANG, &Ctext2Dlg:OnBnClickedKailifang)ON_BN_CLICKED(IDC_RADIO1, &Ctext2Dlg:OnBnClickedRadio1)ON_BN_CLICKED(IDC_RADIO2,
15、&Ctext2Dlg:OnBnClickedRadio2)ON_BN_CLICKED(IDC_FE, &Ctext2Dlg:OnBnClickedFe)ON_BN_CLICKED(IDC_YX, &Ctext2Dlg:OnBnClickedYx)ON_BN_CLICKED(IDC_INV, &Ctext2Dlg:OnBnClickedInv)ON_BN_CLICKED(IDC_MC, &Ctext2Dlg:OnBnClickedMc)ON_BN_CLICKED(IDC_MR, &Ctext2Dlg:OnBnClickedMr)ON_BN_CLICKED(IDC_MS, &Ctext2Dlg:O
16、nBnClickedMs)ON_BN_CLICKED(IDC_MADD, &Ctext2Dlg:OnBnClickedMadd)ON_BN_CLICKED(IDC_MSUB, &Ctext2Dlg:OnBnClickedMsub)ON_BN_CLICKED(IDC_SIN2, &Ctext2Dlg:OnBnClickedSin2)ON_BN_CLICKED(IDC_COS2, &Ctext2Dlg:OnBnClickedCos2)ON_BN_CLICKED(IDC_TAN2, &Ctext2Dlg:OnBnClickedTan2)ON_BN_CLICKED(IDC_PI2, &Ctext2Dl
17、g:OnBnClickedPi2)END_MESSAGE_MAP()/ Ctext2Dlg 消息处理程序BOOL Ctext2Dlg:OnInitDialog()CDialogEx:OnInitDialog();/ 将“关于.”菜单项添加到系统菜单中。/ IDM_ABOUTBOX 必须在系统命令范围内。ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR);pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通俗易懂 基于 MFC 科学 计算器
链接地址:https://www.31ppt.com/p-2386186.html