预览加载中,请您耐心等待几秒...
在线预览结束,喜欢就下载吧,查找使用更方便
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
软件基础课程设计报告C语言计算器设计软件基础课程设计报告一、需求分析系统目标:设计的计算器至少能够进行简单的四则运算和求倒数求反以及开方运算。主体功能:程序能实现:加,减,乘,除,开方,倒数等运算功能;还要实现数据的输入,输出,计算,显示及程序退出等功能。另外还可以实现多种科学计算的功能,如:三角函数的计算,弧度与角度间的转换,对数指数的计算等。开发环境:操作系统:Windows_P编程环境:MicrosoftVisualC+6.二、功能说明(1)包含的功能有:加、减、乘、除运算,开方、求倒数、三角函数、弧度与角度间的转换、对数指数的计算等功能。(2)计算器上数字09为一个控件数组,加、减、乘、除为一个控件数组,其余为单一的控件。(3)给对话框添加菜单。(4)计算功能基本上是用系统内部函数。(5)程序可以能自动判断输入数据的正确性,保证不出现多一个小数点、以0开头等不正常现象。(6)“CE”按钮可以清除所有已输入的数据从头计算,“Back”按钮可以实现退位功能。(7)能够显示时间、日期。三、详细设计(1)流程图创建工程(创建一个对话框应用程序)设计对话框界面设置各控件属性为编辑框连接成员变量为类添加数据成员,初始化构造函数。为所有按钮添加事件对类添加成员函数(更新编辑框)并进行实现实现对各按钮事件的实现(2)编辑资源(3)效果图四、程序附录计算器XXX:#includestdaf_.h#include计算器.h#include计算器Dlg.h#includemath.h#includeFirstDlg.h#include#definePI3.14;#ifdef_EBUG#definenewDEBUG_EW#undefTHIS_ILEstaticcharTHIS_ILE=_ILE_#endiAboutDlgdialogusedforAppAboutclassCAboutDlg:publicCDialogpublic:CAboutDlgialogDatF__ATA(CAboutDlg)enumIDD=IDD_BOUTBO_F__ATlassWizardgeneratedvirtualfunctionoverrideF__IRTUAL(CAboutDlg)protected:virtualvoidDoDataE_change(CDataE_change_pD_)DDVsupporF__IRTUAmplementationprotectedF__SG(CAboutDlgF__SGDECLARE_ESSAGE_AP;CAboutDlg:CAboutDlg:CDialog(CAboutDlg:IDDF__ATA_NIT(CAboutDlgF__ATA_NITvoidCAboutDlg:DoDataE_change(CDataE_change_pD_)CDialog:DoDataE_change(pD_)F__ATA_AP(CAboutDlgF__ATA_APBEGIN_ESSAGE_AP(CAboutDlg,CDialogF__SG_AP(CAboutDlgomessagehandlerF__SG_APEND_ESSAGE_AMyDlgdialogCMyDlg:CMyDlg(CWnd_pParen=NULL:CDialog(CMyDlg:IDD,pParentF__ATA_NIT(CMyDlg)m_esult=0.0F__ATA_NIotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32m_Icon=Af_GetApp-LoadIcon(IDR_AINFRAME);voidCMyDlg:DoDataE_change(CDataE_change_pD_)CDialog:DoDataE_change(pD_)F__ATA_AP(CMyDlg)DD__ontrol(pD_,IDC_DIT1,m_DIT);DD__e_t(pD_,IDC_DIT1,m_esult)F__ATA_APBEGIN_ESSAGE_AP(CMyDlg,CDialogF__SG_AP(CMyDlg)ON_M_YSCOMMANDON_M_AINTON_M_UERYDRAGICONON_N_LICKED(IDC_UM0,OnNum0)ON_N_LICKED(IDC_UM1,OnNum1)ON_N_LICKED(IDC_UM2,OnNum2)ON_N_LICKED(IDC_UM3,OnNum3)ON_N_LICKED(IDC_UM4,OnNum4)ON_N_LICKED(IDC_UM5,OnNum5)ON_N_LICKED(IDC_UM6,OnNum6)ON_N_LICKED(IDC_UM7,OnNum7)ON_