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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

中南大学数学院大三年级面向对象报告.docx

1、中南大学数学院大三年级面向对象报告中南大学面向对象设计实验报告题 目 面向对象设计报告 学生姓名 学 号 专业班级 指导老师 数学科学与计算技术学院2011年11月一:实验内容这三次试验主要包括鼠标画图,菜单,对话框,属性页,向导。这些是面向对象设计的基本内容,在朱世华老师的精心指导下,我取得了一定的实验结果。下面分三块叙述这三个实验。二:鼠标绘图1 鼠标绘图简介Windows系统为显示多种颜色和样式的文本提供了强有力的的支持,可以通过调用各种各样的文本函数在不同的设备上精确的显示文本。使用成员函数SetTextAlign()可以通过致指明一个基准点与边界矩形的位置关系来设置文本对齐方式。调用

2、成员函数SetTestColor()以及SetBkColor()可以改变前景和背景的颜色。利用鼠标绘制图形需要在CdrawView类中分别为WM_LBUTTONDOWN消息 , WM_LBUTTONUP消息创建处理函数OnLButtonDown() 以及 OnLButtonUp()。还需要增加变量用于记录起点和终点坐标。程序代码是Void CdrawView:OnLButton(UNIT nFlags,Cpoint point)If(m_IsDragging) m _EndPoint=point; CclientDC ClientDC(this); - Normal 63 9 1127 642

3、9 Microsoft Office Word 0 53 15 false false 7541 false false 12.0000 - CclientDC ClientDC(this); m _StartPoint =point;m _EndPoint =point;m _IsDragging =true; SetCapture();CView:OnLButtonDown(nFlags,point);下面是过程中的截图这张截图是属性这张是类视图这张截图是添加成员变量向导。下面是鼠标绘图的绘图程序用户界面。运行程序完全正常,界面如下。一个简单的绘制直线 ,矩形椭圆图形。需要编写一个简单的绘

4、图程序,允许用户使用鼠标在用户区域中自由的绘制直线矩形及椭圆。实现一个简单的绘图程序先生成一个单文档MFC应用程序,单击视图菜单的资源视图菜单项,调出资源试图窗口,展开资源DRAW,菜单资源定义在文件夹Menu中,文件夹中有一个名为IDR-MAINFRAME的菜单资源,双击将其打开,在菜单编辑器中,可以根据“请在此输入”的提示,向程序菜单栏增加一个名为“工具”的新菜单,并在新的菜单栏下建立三个选项:直线,矩形。椭圆形。将直线,矩形,椭圆形三个选项的ID设置库存中的。程序代码是:Cdrawview:cdrawview()m_line=true;m_rectangle=flase;m_ellips

5、e=false;void CdrawView:OnUpdateLine(CcmdUI *pCmdUI) - Void cdrawview:onellipse() m _Line=false; m _Rectangle=false; m _Ellipse=true; 三,计算器我还还做了一个简单的计算器。就是简单的一个加法计算器。问题是用面向对象程序设计方法设计一个简单的计算器程序,该程序能完成简单的整数的加减乘除运算。我主要是用C+里面的循环结构,各种运算符,函数,控制语句,数据类型以及VB里面的基础知识,来编出一个简单的加法计算器。运行结果还不错。程序代码:using System;usin

6、g System.Collections.Generic;using System.Text;namespace shangjiyi / / 此示例演示计算机两个数的加减乘除取余 / class Program static void Main(string args) int first; /第一个操作数 int second; /第二个操作数 string myOprator; /运算符 int result; /计算结果 /输入参与计算操作数和运算符 Console.WriteLine(我是第一个简单的计算器,可以实现两个整数的加减乘除取余); Console.Write(请输入第一个操

7、作数:); first = int.Parse(Console.ReadLine(); Console.Write(请输入第二个操作数); second = int.Parse(Console.ReadLine(); Console.Write(请输入运算符(+ - * %):); myOprator = Console.ReadLine(); /计算,并输出运算符 if (myOprator = +) /加法 result = first + second; Console.WriteLine(加上等于, first, second, result); else if (myOprator

8、= -) /减法 result = first - second; Console.WriteLine(减去等于, first, second, result); else if (myOprator = *) /乘法 result = first * second; Console.WriteLine(乘以等于, first, second, result); else if (myOprator = %) /取余 result = first % second; Console.WriteLine(除以等于, first, second, result); else Console.Wri

9、teLine(对不起,我不认识你的运算符!); Console.ReadLine(); 利用C+系统中的各种运算符,输入需要运算的数字,会有提示:请输入第一个操作数,请输入第二个操作数。 然后选择四则混合运算中的加减乘除。如果输入的运算符不在+-*%这四个运算符中,那么系统会提示对不起,我不认识你的运算符!这是面向对象里面的加法计算器,在NUMBER1,NUMBER2,NUMBER3中输入想要计算的数字,点击ADD,就可以计算出它们的和。上面两个图是加法运算器的截图,程序也好理解。四:对话框MFC有对话框模版,直接用鼠标单击就可以创建一个对话框,在。NET中,没有专门的对话框模版,可以把窗体的

10、属性设置为”FixedDialog”来把窗口设置为对话框,窗体与对话框有相同之处,对话框就是特殊的窗体。程序代码:#using #using #using Using namespace System:ComponentModel:Using namespace System:Windows:Forms;Using namespace System: Drawing - w:footnotes xmlns:ve=http:/schemas.openxmlformats.org/markup-compatibility/2006 xmlns:o=urn:schemas-microsoft-com

11、:office:office xmlns:r=http:/schemas.openxmlformats.org/officeDocument/2006/relationships xmlns:v=urn:schemas-microsoft-com:vml xmlns:wp=http:/schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing xmlns:w10=urn:schemas-microsoft-com:office:word xmlns:w=http:/schemas.openxmlformats.org/word

12、processingml/2006/main xmlns:wne=- - - - - w:p w:rsidR=00F35DB2 w:rsidRDefault=00F35DB2 AcceptButton =ResultBtn;Application:Run(new CalculatorDlg();五,向导向导就是用户在操作中一步一步的选择,就像下载某个软件会有一步步的提示。便于用户完成。用户注册时,需要选择自己的基本信息,譬如喜欢那种球类,月工资多少,居住地等等。这需要编程人员的对用户的了解程度而定。我这里只做了一个简单的面向对象设计向导,比较粗糙。主要是根据朱世华老师的上课教学还有孙鑫老师的C

13、+视频学的的,当然结果是非常粗糙的。程序代码:#include#include#include#includeusingnamespacestd;typedefstructtagEmpNodestring_ID;string_name;double_pay;tagEmpNode*_next;tagEmpNode();tagEmpNode(consttagEmpNode&node);EmpNode,*PEmpNode;typedefPEmpNodeEmpList;classEmpSysprivate:EmpListm_head,m_rear;unsignedintm_size;public:Em

14、pSys();EmpSys(constEmpSys&old);EmpSys();bool ReadData(istream&in);bool Insert(EmpNode&newNode);bool Delete(PEmpNodedelNode);double FindByName(conststring&name);double FindByID(conststring&id);PEmpNode GetByName(conststring&name);PEmpNode GetByID(conststring&id);bool AccendingByPay();newSys.PrintList

15、(cout);system(pause);break;case4:newSys.DecendingByPay();newSys.PrintList(cout);system(pause);break;case5:coutname;cout工程师:namet老师:newSys.FindByName(name)“经理”endl;system(pause);break;case6:coutID;coutID:篮球t网球:newSys.游泳FindByID(ID)足球endl;system(pause);break;case7:coutname;pTemp=newSys.GetByName(name)

16、;coutID_IDt姓名:_namet工资:_payendl;newSys.Delete(pTemp);system(pause);break;case8:break;case0:working=false;default:system(pause);return0;这是选择薪金水平的向导。这是选择注册用户的体育爱好的向导。一共包括篮球,足球,网球,游泳四大类体育活动 这是用户选择职业的向导,只设置了工程师,老师,经理三个职业。还有一个框是用来填工作地点的。也比较粗糙报告心得:课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具

17、体训练和考察过程.随着科学技术发展的日新日异,面向对象设计技术显得更加重要, 在生网络系统中中可以说得是无处不在。因此作为二十一世纪的大学来说掌握面向对象设计是十分重要的。回顾起此次面向对象设计,至今我仍感慨颇多,的确,在做鼠标绘图,菜单,对话框,属性页,向导,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说C+技术比较薄弱。通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在朱世华老师的辛勤指导下,终于游逆而解。同时,在朱世华老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!

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

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