




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
郑州工业应用技术学院课程设计说明书题目: 通讯薄 姓 名: 张梦莹 院 (系): 信息工程学院 专业班级:计算机科学与技术一班学 号: 1401110147 指导教师: 张吉同 成 绩: 时间: 2015年 11 月 14 日至 2015年 12 月 4 日郑州工业应用技术学院课程设计任务书题目 通讯薄 专业、班级 计算机科学与技术一班 学号 1401110147姓名 张梦莹 基于visual c+实现 简单的通讯薄摘要:本通讯薄信息管理系统用计算机管理电子通讯录的一种计算机应用技术的创新,在计算机还未普及之前通讯管理都是由联系人采用名片,笔录手工记账的方式来操作的。现在一般的通讯录管理都是采用计算机通讯录管理程序来帮助人们进行更有效的通讯录信息管理。查阅有关资料,进一步理解程序设计模块的思想。通过本设计可以加深理解利用程序设计思想开发一个系统的整个流程,提高分析问题、解决问题和实际动手的能力。 关键字:c+; mfc编程完成期限:2015年11月14日至2015年12月4日指导教师签名: 课程负责人签名: 2015年 12 月 4 日前言日益繁多的人际交往使得我们很难记住与每个人之间的联系方式,通讯录能够便捷的给我们带来所需要的相关信息。而随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机或者手机中的电话簿程序来帮助人们记住这些事情极其简便。这就需要有一个使用的通讯录管理系统,用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。21世纪是it普及的世界,到处都存在it的身影,身处其中,实时通讯已是占据它不可或缺的地位。因此,一个好的、强大的通讯录系统已成为企业、个人通讯工作的好坏不但可以直接影响到企业、个人人际关系,而且会间接的影响到企业、个人经济利益和社会地位。随着社会的发展,科技的进步,计算机的应用在社会各领域中都得到了普及越来越多的人都感受到利用计算机进行各类管理的科学和便捷;认识到通讯信息系统对于通讯工作的重要性。利用计算机进行通讯管理是必然趋势,通讯录系统是各类工作中不可缺少的。所以在这次课程设计中,我选择开发通讯录管理系统。通讯录管理系统的功能主要有增加记录,删除记录。这就要求它应该能够为用户提供有好美观的窗口界面、充足可靠的信息数据、简单方便的维护手段和灵活多变的查询方式以及快捷而准确的查询结果。所以,对于通讯录管理系统的设计主要包括数据库的建立、维护以及应用程序的开发两个方面。对于前者而言要求建立起数据一致性及完整性强、数据安全性好的数据库。对于后者而言则要求具备应用程序功能全易使用等,运行稳定等特点。因此,拟选用的开发软件是microsoft公司出品的visual c+6.0 mfc平台进行系统的开发。目录前言1第一章 课程设计的目的和要求 31.1 课程设计目的31.2 课程设计要求3 第二章 课程设计任务内容 4 2.1 系统实现方案4 2.2 系统实现环境4 2.3具体的开发方法4 第三章 总体设计思路 5 3.1 面对的问题5 3.2 解决问题的关键技术等5 3.3 通讯录系统管理分析5 3.4 涉及的基础知识5 3.4.1 mfc简介5 3.4.2 appwizard向导开发应用程序5 第四章 功能模块框图10 4.1 通讯录管理涉及10 4.2 部署链接10 4.3 算法描述11 4.4 详细流程图11 第五章 程序测试12 第六章 课程设计遇到的问题与体会15 参考文献 16 附录 17第一章 课程设计目的和要求1.1 课程设计目的学习了了c+语言后,通过编写程序基本掌握面向过程程序设计的基本思路和方法,达到熟练掌握c+语言的基本知识和技能,使自己能够利用所学的基本知识和技能,解决简单的程序设计问题。1.2 课程设计要求基本要求 在编写程序的过程中,要利用c+语言面向过程的编程思想来完成系统的设计,特别是要突出c语言的函数特征,以多个函数实现每一个子功能,其中还包括灵活运用指针、画出功能模块图、用文件流实现数据的保存和读取。整个程序要进行简单界面设计,能够实现友好的交互,具有清晰的程序流程图和数据结构的详细定义。创新要求软件要有自己的特点,要有很好的可移植性,做到尽量完善程序总体方案使用在基础知识中数据库的设计先设计数据库和数据表。用mfc设计应用程序框架,在创建mfc时,进入框架设计的第2步,应选择“查看数据库而不使用文件支持”,在“data source”里添加已经创建的数据库和数据表,即可完成。然后制作通讯录管理主窗体,在里面最主要的是进行控件与数据表字段的绑定。最后为系统实现增加、删除、刷新与查询功能。第二章课程设计内容用c+语言编写一个通讯簿软件实现以下功能:1.管理个人的联系人信息,可以方便地通过该软件对联系人进行相 应的功能操作;2. 联系人信息可以根据需要全部显示,默认为按字母顺序显示;3. 联系人信息查询可以通过输入姓名查询或输入号码查询4. 新建联系人,填写联系人信息,包括姓名、地址、邮箱、联系方式、备注等;5. 支持对联系人信息的修改;6. 能够删除不再需要的联系人;7. 能够通过文件的方式浏览联系人的信息。2.1系统实现方案:为实现系统功能,本程序主要分为五个模块。它们分别为:输入一个信息、删除一个信息、查询一个信息、插入一个信息、列出所有的信息、退出该程序。这五个函数再通过主函数调用分别得以实现。 主函数,首先提供了程序运行时的友好界面,列出了清单,提供用户做出选择,以便决定使用通讯录的哪种功能。然后,通过执行多分支选择语句switch语句,分别实现其它各个函数的调用功能。2.2系统实现环境:通过vc+6.0用c+语言对程序进行编写设计在windows界面下用dos访问2.3具体的开发方法:用面向对象的程序设计方法,运用c+语言编写程序进行该学生考勤管理系统的详细设计,使之能提供录入、显示、查找、删除、修改的功能。最后在vc+6.0环境下编写和调试程序,进而完成系统的实现。第三章 总体设计思路 根据课程设计任务编写了相应的程序。程序简单的分为了八个模块,以下对八个模块进行说明,包括模块间的关系、函数、函数间的关系以及系统的测试、运行等都会加以说明。3.1 面对的问题这次课题主要的问题就是数据库的结构设计。这里所说的数据库结构设计是指数据库中各个表结构的设计,包括信息保存在哪些表格中,各个表的结构如何以及各个表之间的关系。通讯录管理虽然只有一个数据表,但仍然要进行数据链接,这其中也就带来了各成员之间的绑定问题。3.2解决问题的关键技术等通讯录管理系统需解决的关键技术是与数据源进行链接,microsoft access的使用以及mfc的使用等。3.3 通讯录管理系统分析通讯录管理系统主要是对个人的人脉通讯信息的管理,使个人的人脉通讯信息管理更加科学化、便捷化;为个人的人脉通讯信息管理水平跨上新台阶;为个人的人脉发展奠定坚实基础。进行通讯录管理系统需要windows2000以上的操作系统及visual c+6.0语言环境。3.4 涉及的基础知识3.4.1 mfc简介mfc是microsoft foundation class library(微软基础类库)的缩写形式。它是c+的类集,提供面向对象框架,利用这个框架,程序员可以轻松地创建windows应用程序。mfc还提供应用程序开发模型。此模型被称为文档/视图模型。文档/视图模型是将应用程序数据与用户界面元素分离的一种应用程序方法。它允许这两部分程序独立存在,这样一来,程序员在更改其中一部分时,就无须大量更改另一部分。mfc为程序员提供了更友好的c+类,使之更易于使用。在很多情况下,mfc在幕后执行一些复杂操作,而向开发人员提供更简单的编程界面,并可以掩盖windows api的一些缺点。3.4.2 appwizard向导开发应用程序 从file菜单中单击new(新建),显示new对话框的projects(项目)选项卡,其中列出了visual c+中的向导。选择标有mfc appwizard(exe)的图标,如图,为项目输入一个名字。在location文本框中指定一个路径。直到选择列表中的一个图标,并输入一个项目名后,ok按钮才能用。单击ok。步骤1 appwizard的第一步要求用户指定应用程序的类型,选择单文档界面(sdi)多文档界面(mdi)或基于对话框的界面。要创建不需要文档对象从磁盘文件中读取数据的简单的windows应用程序,把标为document/view architecture support(文档/视图结构支持)复选项禁用即可步骤2在图中所在的appwizard的第二步中,要求提供项目所需要的数据库支持种类。我们选择none,有使用数据库,next(下一步)按钮跳过这一步,进到步骤3。步骤3在appwizard的第三步中,设置程序的ole和activex支持类型。对话框上半部分的五个单选按钮控制着appwizard添加到程序中的复合文档支持的类型。我们仍然选择none,单击next按钮进到步骤4。步骤4在图中所示的appwizard的第四步中,可以控制appwizard为程序创建哪些用户界面元素。appwizard自动为程序主窗口的菜单系统、工具栏及状态栏生成代码和数据。normal(常规)internet explorer rebars单选按钮为应用程序的工具栏提供两种不同的风格。激活context-sensitive help(上下文相关)复选项,会告诉appwizard希望所创建的程序提供在线帮助。这些说明清晰完整不需要再做更多的工作只需要说明那些自己添加到程序中的命令以加强帮助文件。在appwizard第四步的对话框的右下角有一个advanced(高级)按钮,单击它,将显示一个标题为advanced options(高级选项)的包含两个选项卡的对话框。步骤5所示的 appwizard 的第五步询问想创建的程序的风格、是否需要附加的源代码注释,及希望程序如何链接到mfc库。 步骤6appwizard 的第六步列举了appwizard将为项目创建的类 单击finish按钮后,appwizard显示一个摘要表,其中列出了所选的项目特征。单击ok会使appwizard在摘要表底部所列的目录下创建项目。第四章 功能模块框图根据系统功能的要求,可以将系统分解成几个功能模块,它如图212所示。 4.1通讯录管理系统设计通讯录管理系统设计主要进行四个功能:增加记录、删除记录、修改记录。4.2部署链接 4.3算法描述增加记录的功能描述(如图3-2所示):获取指向数据库的指针-确认对数据库的任何修改均已保存-获取新的name值-通过addnew函数来添加新记录-把新的name值设置为新增记录中的name字段值-调用requery函数更新记录-游标移到最后一条记录。删除记录的功能描述(如图3-3所示):删除记录-游标移到下一条记录-如果游标在文件尾,将它移到最后一条记录-如果游标在文件头,则内容为空-更新表单。4.4 详细流程图 第五章 程序测试编译并连接源程序,执行程序后 1)初始界面2)增加记录的运行图3)删除记录的运行图 第六章 课程设计遇到的问题与体会实验过程中遇到的问题:1、始时对mfc的一些控件的使用不是很熟悉,通过查阅相关资料了解了树形、列表控件的使用方法。2、按照教程上的方法在删除记录时无法删除相应的数据经过自己的调试和修改,得到了自己想要的结果。3、实现添加记录到树中的功能时,开始并没有得到想要的结果,总会插入重复的数据,后经过自己的分析,发现了算法的错误之处,并加以改动,实现了所需的功能。体会:本程序基本完成了报告上要求的添加、修改、删除、分类显示、查询这些要求。分类显示实现了多级显示。但本程序只能添加本学校的学生信息,如果输入学院、专业、班级为空,树形控件的显示也为空。分类显示应该像qq这类聊天工具一样,可以自己定义分组,然后向每个分组中插入学生信息。本程序还进行了打包,方便其他同学安装使用,但只能安在默认目录下,安装在其它目录下会提示用户选择数据源。课程设计是十分有意义,而且是十分必要的。编写程序的过程就是自我提高的过程。通过编写程序能够巩固自己所学,发现自己编程中的问题,改正自己的错误,锻炼自己的思维,掌握更多的新知识。其实,编程也可以看作是一种智力游戏。它要求编程者思路清晰,语言严谨,算法科学、正确,对问题的处理要干净、简洁。当然,在这次课程设计作业的过程中由于在设计方面我们没有经验,理论基础知识掌握得不牢固,在设计中难免会出现这样那样的问题,但是方法总是比问题多,有问题才会有进步,所以我在完成这次作业的过程中我总是不怕出现问题,希望发现问题、解决问题。本次的课程设计,培养了我综合应用c+程序设计课程及其他课程的理论知识和理论联系实际的能力,在今后的学习过程中我们会更加努力和团结。程设计可以说要告一段落了,这期间虽然很忙碌、很疲劳,但是收获很大。希望这次课程设计作业能够得到老师的评点和指教。参考文献:1 谭浩强 . c+程序设计(第一版).m.北京:清华大学出版社,2004 2 decoder.c/c+程序设计.m.北京:中国铁道出版社,2002 3 美walter savitch著,周靖译.c+面向对象程序设计基础、数据结构与编程思想.m.北京:清华大学出版社,20044 刁成嘉.面向对象c+程序设计.m.北京:机械工业出版社,2004附录:部分程序(带有较详细的注释)增加记录的代码voname codbcdlg:onbtnadd() / todo: add your control notification handler code here char strsql1024; this-updatedata(true); sprintf(strsql,insert into emp values(%d,%s,%s), atoi(m_strname), m_strsex, m_strphone); icepub_databaseexesqldirect(m_hdbc,strsql,&hstmt); /执行sql语句this-showdata();sprintf(strsql,delete from emp where 姓名= %s, m_strname); icepub_databaseexesqldirect(m_hdbc,strsql,&hstmt); /执行sql语句this-showdata(); /刷新clistctl的显示数据m_strname = ; m_strsex = ; m_strphone = ; updatedata(false); 刷新记录的代码voname codbcdlg:onbtnrefresh() / todo: add your control notification handler code here this-updatedata(false); this-showdata(); 修改记录的代码voname codbcdlg:onitemchangedlist2(nmhdr* pnmhdr, lresult* presul
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 焦作市中石化2025秋招笔试模拟题含答案炼油设备技术岗
- 县城市供水突发事件应急预案范文(9篇)
- 土地承包协议15篇
- 合理燃放烟花倡议书
- 寒假劳动心得15篇
- 国有建筑企业年会发言稿
- 婚礼的讲话稿
- 房产年终个人工作总结
- 律师委托书15篇
- 2025年电子行业消费电子产品设计与用户体验研究报告
- 煤矿安全规程2025版解读
- 哈里伯顿Sperry定向钻井介绍专题培训课件
- 2021年江苏省徐州市中考生物试卷(附详解)
- JJF 1704-2018 望远镜式测距仪校准规范
- 石油化工设备维护检修规程通用设备12
- 《三角形的面积》教学设计方案
- GB/T 14667.1-1993粉末冶金铁基结构材料第一部分烧结铁、烧结碳钢、烧结铜钢、烧结铜钼钢
- 带状疱疹及带状疱疹后神经痛
- 2022年毕节市农业发展集团有限公司招聘笔试试题及答案解析
- 卒中单元中的护理
- 中药鉴定学习题集全
评论
0/150
提交评论