ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:145.14KB ,
资源ID:9009079      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9009079.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(精品科学计算器毕业论文.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

精品科学计算器毕业论文.docx

1、精品科学计算器毕业论文(此文档为word格式,下载后您可任意编辑修改!)徐州师范大学物电学院课程设计报告课 程 名 称: 计算机程序设计实训 题 目: 科学计算器 专 业 班 级: 电子科学与技术 学 生 姓 名: 徐金富 指 导 教 师: 赵纪平 物电学院教务部印制说明:1、报告中的第一、二、三项由学生在课程设计开始前填写,由指导教师指导并确认签字。2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩,并填写成绩评定表。3、所有学生必须参加课程设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。答辩小组成员应由2人及以上教师组成。答辩后学生根据答辩情况填写答辩记录表。4、报告正

2、文字数一般应不少于3000字,也可由指导教师根据本门课程设计的情况另行规定。5、平时表现成绩低于6分的学生,取消答辩资格,其该课程设计成绩按不及格处理。6、课程设计完成后,由指导教师根据完成情况写出总结。7、此表格式为徐州师范大学物理与电子工程学院提供的基本格式,指导教师可根据本门课程设计的特点及内容做适当的调整。一、课程设计目的、任务和内容要求:计算机语言程序设计是一门以编程实践为主的专业课,目的在于培养学生利用计算机语言进行软件开发所必需的基本思想和基本技能,进一步提高综合应用计算机语言的各种编程知识和技巧进行程序设计的能力,通过本次课程设计,学生应能达到具备设计功能较为复杂的应用程序的能

3、力,同时培养学生自主学习和独立创新的精神。任务如下: 1进行需求分析和概要设计,给出流程图。 2写出详细设计,熟悉其中采用的关键技术。3给出具体的编码实现并调试。4写课程设计报告提交源程序。内容要求:设计并完成软件系统。要求:1应具有简洁友好的用户界面。2要求软件系统的功能完整。3要求程序具备正确性,可读性和运行的高效性。 二、进度安排:第3天: 查找资料,进行需求分析和概要设计;第46天: 各模块的详细设计;第712天: 软件实现与调试;第1314天:写课程设计报告并提交源程序。三、主要参考文献:【1】 王敬栋 Visual C+课程设计案例精编(M) 北京:中国水利水电出版社 2006【2

4、】 夏崇镨 任海军 Vsiual C+课程设计案例精编(M)北京:清华大学出版社2008【3】 郑阿奇Visual C+实用教程(M)北京:电子工业出版社 2010【4】 陈清华.Visual C+课程设计案例精选与编程指导(M)南京.东南大学出版社,2004【5】 夏崇镨 任海军 Vsiual C+课程设计案例精编(M)北京:清华大学出版社 2002 指导教师签字: 年 月 日目 录摘 要 IIAbstract . II1绪论 . 11.1 背景、目的 11.2 简易计算器的功能.12 设计方案简述 . 22.1 输入流程分析 .22.2 计算流程分析 .2 3 详细设计 . 43.1 起始

5、设计步骤 .4 3.1界面设计 . 5 4 设计结果及分析. . 104.1 测试设计结果 .10 4.2 设计分析 . . 105 总 结 . .12 参考文献 . . .13 附录 程序代码 . . .14 摘 要随着计算机网络通信技术、微电子技术的快速发展,作为21世纪的接班人,跟上时代的前进步伐,这就需要适应能够适应现实生活的节奏,现实生活中,很多时候要经行计算来处理一些事务,设计计算器可以帮助人们避免繁琐的计算,也可以加快人们办事效率,设计中运用MFC设计的是简单计算器,包括双目运算和单目运算功能。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含三角函数,反三角函数,阶乘,对数

6、,开方,倒数等方面的运算。可对输入任意的操作数,包括小数和整数及正数和负数进行以上的所有运算并能连续运算。当出现错误会给出相应提示。关键词:简单计算器; MFC; 计算AbstractWith the computer network communication technology, the rapid development of microelectronics technology, as the successor to the 21st century, keep up the pace of the times, which need to adapt to adapt to t

7、he rhythm of real life, real life, many times to be calculated by the line deal with some matters, the design calculator can also expedite Renmen efficiency, the design of MFC design is the use of simple calculator, including the eyes and the unary operator function. Binocular operators include basi

8、c arithmetic, and power functions, unary include trigonometric functions, inverse trigonometric functions, factorial, logarithm, square root, reciprocal and other aspects of operations. The operation can enter any number, including decimals and integers, and positive and negative for all of the abov

9、e operations and to continuous operation. When an error will give a prompt.Keywords:Simple Calculator;MFC ;Calculation1绪论1.1背景、目的21世纪,随着科技的发展,人们生活节奏的加快,要想跟上时代的前进步伐,这需要我们适应能够适应现实生活的节奏,而生活中有很多方面需要进行计算,如统计,测量,等等各方面需要处理大量的计算任务,如果只靠人脑通过笔来计算,那效率低下,还烦琐。而且容易出错,这就需要处理事件快捷的工具计算器。目前所有计算机带自带计算器,大大的方便人们的计算,处理事务,

10、本设计中,运用MFC实现计算器的功能。同样可以方便生活中处理计算类的事件,避免烦琐的计算,提高人们的处理计算事件的办事效率,而且计算不会出错。当输入有错时候,可以自动提示错误。计算器的发展已经经过几十年的过程,现在的计算器种类繁多,运算功能强大,在各行各业中均有应用,它的发展让人们节省了很多时间精力,计算器的发展正在向各个方向延伸,每个行业所需要的计算有差别,这就发展了各种类型单独的计算器,计算的运算速度,计算数字的庞大也在不断向前发展,本设计中的简易计算器,可以实现简单的单目和双目运算,方便一些简单事务的处理。1.2简易计算器的功能计算器的功能多少决定了计算器的实用价值,本设计中的简易计算器

11、实现的主要功能有:1)简单的四则运算:加、减、乘、除 以及取百分数2)开方、幂运算、倒数、对数、阶乘、平方3)正弦、余弦、正切这些功能都是很常见的需要计算器功能,它可以帮助人们完成很多需要计算处理的功能。所以次简易计算器很有实用价值,可以很好的帮助使用者,让计算变的简单化,不必去进行复杂的笔算,很大程度上的减轻了使用者的精神上的损耗,也很大程度上提高了使用者的办事效率。2 设计方案简述2.1输入流程分析如图2-1是整个计算器的流程图,打开计算器程序,输入数据,调用输入数据子程序。子程序开始时m_show为零。按下数字按钮后,判断m_show的正负号,对其进行相关处理,然后在判断是否有小数点,处

12、理后输出结果。图2-1 输入数据子函数流程图2.2计算流程分析回到总流程图中,输完第一个操作数后,若按下双目运算符,则把m_show存入data1,按下输入第二个操作数并算出结果。若按下的是单目运算符,则直接对其处理得出结果。若按下清零,则m_show等于0.在运算中还要判断运算是否合法,以及结果是否超出显示范围,以做出相关提示,按下清零。算出后把结果保存至m_show中。若需用算出的结果继续运算则当按下运算符号时,将自动先将m_show的数字保存到data1中再进行运算。科学计算器总流程图如图2-2所示图22 科学计算器总流程图3 详细设计过程3.1 起始设计步骤1.打开Microsoft

13、Visual C+ 6.0,在文件中点击新建,在弹出框内选择MFC AppWizardexe工程,输入工程名jianyijisuanqi及其所在位置,点击确定.2. 将弹出MFC AppWizard-step 1对话框,选择基本对话框,点击完成.新建工程信息如图3-1图3-1这样,MFC AppWizard就建立了一个基于对话窗口的程序框架,如图3-2所示图3-23.2 界面设计3.2.1.创建控件在图2所示的Resoure View选项卡中打开Dialog资源组,双击IDD_JIANYIJISUANQI_DIALOG,在右边的窗口中显示出待编辑的对话框。开始摆放控件,包括编辑框和按钮的创建。

14、其中按钮的创建以“1”为例进行介绍,其他按钮的创建可参照它进行操作。1)在图3-2中Controls的“编辑框”按钮上单击鼠标左键,在对话框编辑窗口上合适的位置按下鼠标左键并拖动鼠标画出一个大小合适的编辑框。在编辑框上单击鼠标右键,在弹出的快捷莱单中选择属性选项,此时弹出Edit属性对话框,如图3-3所示,在该对话框中输入ID属性,再选择styles中将Align test中选择Right 。图3-32)在图3-2中Controls的“Button”按钮上单击鼠标左键,在对话框上的合适的位置上按下鼠标左键并拖动鼠标画出一个大小合适的下压式按钮。在按钮上单击鼠标右键,在弹出的快捷菜单中选择属性选

15、项,此时也弹出Push Button属性对话框,如图3-4所示,在该对话框中输入控件的ID值和标题属性。图3-4按照“1”的操作过程编辑完成其他按钮和编辑框等对象的属性。各按钮与编辑框等对象的属性如表3-1、3- 2、3-3、3-4所示表3-1 数字按钮和编辑框等对象的属性控件类型ID属性设计Edit BOXIDC_SHOW_EDITButtonIDC_NUM1_BUTTON1ButtonIDC_NUM2_BUTTON2ButtonIDC_NUM3_BUTTON3ButtonIDC_NUM4_BUTTON4ButtonIDC_NUM5_BUTTON5ButtonIDC_NUM6_BUTTON6

16、ButtonIDC_NUM7_BUTTON7ButtonIDC_NUM8_BUTTON8ButtonIDC_NUM9_BUTTON9ButtonIDC_NUM0_BUTTON0表3-2. 四则运算的按钮对象属性ButtonIDC_FU1_BUTTONButtonIDC_FU2_BUTTONButtonIDC_FU3_BUTTONButtonIDC_FU4_BUTTON表3-3 三角函数集反三角函数的属性ButtonIDC_SIN_BUTTONsinButtonIDC_COS_BUTTONcosButtonIDC_TAN_BUTTONtan表3-4 其他按钮的属性ButtonIDC_LOG_BU

17、TTONlogButtonIDC_MOD_BUTTONmodButtonIDC_KE2_BUTTONx2ButtonIDC_KE4_BUTTON10xButtonIDC_FU7_BUTTON.ButtonIDC_EQUAL_BUTTON=ButtonIDC_FU5_BUTTON%ButtonIDC_FU6_BUTTON+-ButtonIDC_BACKSPACE_BUTTON回删ButtonIDC_C_BUTTON清零ButtonIDC_KE1_BUTTON1xButtonIDC_LN_BUTTONlnButtonIDC_CE_BUTTON完成后界面如图3-5所示图3-53.2.2程序运行时初始

18、化1)jianyijisuanqiDlg.cpp里加上头文件#include math.() TODO: Add your control notification file#include stdafx. overrides AFX_VIRTUAL(CAboutDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); DDXDDV support AFX_VIRTUAL Implementationprotected: AFX_MSG(CAboutDlg) AFX_MSG DECLARE_MESSAGE_MAP();CA

19、boutDlg:CAboutDlg() : CDialog(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 does not require a subsequent

20、DestroyIcon in Win32 m_ = AfxGetApp()-LoadIcon(IDR_MAINFRAME);void CJSQDlg:DoDataExchange(CDataExchange* pDX) CDialog:DoDataExchange(pDX); AFX_DATA_MAP(CJSQDlg) DDX_Text(pDX, IDC_M_EDIT, m_M); DDX_Text(pDX, IDC_SHOW_EDIT, m_Show); AFX_DATA_MAPBEGIN_MESSAGE_MAP(CJSQDlg, CDialog) AFX_MSG_MAP(CJSQDlg)

21、ON_WM_SYSCOMMAND() ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_BN_CLICKED(IDC_NUM0_BUTTON, OnNum0Button) ON_BN_CLICKED(IDC_NUM1_BUTTON, OnNum1Button) ON_BN_CLICKED(IDC_NUM2_BUTTON, OnNum2Button) ON_BN_CLICKED(IDC_NUM3_BUTTON, OnNum3Button) ON_BN_CLICKED(IDC_NUM4_BUTTON, OnNum4Button) ON_BN_CLICKED(IDC_NU

22、M5_BUTTON, OnNum5Button) ON_BN_CLICKED(IDC_NUM6_BUTTON, OnNum6Button) ON_BN_CLICKED(IDC_NUM7_BUTTON, OnNum7Button) ON_BN_CLICKED(IDC_NUM8_BUTTON, OnNum8Button) ON_BN_CLICKED(IDC_NUM9_BUTTON, OnNum9Button) ON_BN_CLICKED(IDC_FU7_BUTTON, OnFu7Button) ON_BN_CLICKED(IDC_BACKSPACE_BUTTON, OnBackspaceButto

23、n) ON_BN_CLICKED(IDC_CE_BUTTON, OnCeButton) ON_BN_CLICKED(IDC_FU6_BUTTON, OnFu6Button) ON_BN_CLICKED(IDC_C_BUTTON, Onclear) ON_BN_CLICKED(IDC_FU1_BUTTON, OnFu1Button) ON_BN_CLICKED(IDC_FU2_BUTTON, OnFu2Button) ON_BN_CLICKED(IDC_FU3_BUTTON, OnFu3Button) ON_BN_CLICKED(IDC_FU4_BUTTON, OnFu4Button) ON_B

24、N_CLICKED(IDC_EQUAL_BUTTON, OnEqualButton) ON_BN_CLICKED(IDC_KE1_BUTTON, OnKe1Button) ON_BN_CLICKED(IDC_SIN_BUTTON, OnSinButton) ON_BN_CLICKED(IDC_COS_BUTTON, OnCosButton) ON_BN_CLICKED(IDC_TAN_BUTTON, OnTanButton) ON_BN_CLICKED(IDC_KE2_BUTTON, OnKe2Button) ON_BN_CLICKED(IDC_LN_BUTTON, OnLnButton) O

25、N_BN_CLICKED(IDC_LOG_BUTTON, OnLogButton) ON_BN_CLICKED(IDC_KE3_BUTTON, OnKe3Button) ON_BN_CLICKED(IDC_KE4_BUTTON, OnKe4Button) ON_BN_CLICKED(IDC_MOD_BUTTON, OnModButton) ON_BN_CLICKED(IDC_FU5_BUTTON, OnFu5Button) ON_BN_CLICKED(IDC_M1_BUTTON, OnM1Button) ON_BN_CLICKED(IDC_M2_BUTTON, OnM2Button) ON_B

26、N_CLICKED(IDC_MR_BUTTON, OnMrButton) ON_BN_CLICKED(IDC_MC_BUTTON, OnMcButton) ON_WM_CTLCOLOR() AFX_MSG_MAPEND_MESSAGE_MAP() CJSQDlg message the system command range. ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR); pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTB

27、OX, strAboutMenu); Set the icon for this dialog. The framework does this automatically when the applications main window is not a dialog SetIcon(m_, TRUE); Set big icon SetIcon(m_, FALSE); Set small icon TODO: Add extra initialization TRUE; return TRUE unless you set the focus to a controlvoid CJSQD

28、lg:OnSysCommand(UINT nID, LPARAM lParam) if (nID & 0xFFF0) = IDM_ABOUTBOX) CAboutDlg dlgAbout; dlgAbout.DoModal(); else CDialog:OnSysCommand(nID, lParam); If you add a minimize button to your dialog, you will need the code below to draw the icon. For MFC applications using the documentview model, this is automatically done for you by the framework.void CJSQD

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1