客户信息管理系统5021_第1页
客户信息管理系统5021_第2页
客户信息管理系统5021_第3页
客户信息管理系统5021_第4页
客户信息管理系统5021_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.湖南第一师范学院信息科学与工程学院课程设计报告所属专业:计算机科学与技术课程名称:C+课程设计课程设计名称:客户信息管理系统姓名:李碧秋指导教师:杨恒伏伍智平2015年12月Word文档.湖南第一师范学院课程设计任务书2015-2016学年第1学期院(部)信息科学与工程学院专业计算机科学与技术班级14计科1班课程名称:C+课程设计设计题目:客户信息管理系统达成限期:自2015年12月28日至2016年1月8日共2周掌握面向对象程序设计语言C+的基本语法掌握C+面向对象设计的思想目的及任务4.掌握VC+6.0与DEVC+开发工具的使用运用标准C+规范设计应用程序按照软件过程的各个环节进行系统剖

2、析、设计、实现、集成、测试,并相应给出软件规格说明书等文档。起止日期工作内容2015.12.28选题,系统背景检查与文件资料采集,实验平台建立2015.12.2920系统需求剖析、系统纲要设计、类的设计15.12.31进度安排2016.1.12016系统详尽设计与编码实现.1.42016.1.52016系统测试与完美、文档整理与课程设计报告撰写.1.81郑莉,董渊,何江舟著.C+语言程序设计(第4版)(清华大学第一版社,2010.7主要参照资料2(美)梅因等著,金名等译.数据结构与面向对象程序设计(C+版)(第4版).清华大学第一版社,2012.53梅险,曲蔚,孙建业编.C/C+程序设计事例教

3、程实验与实训指导.高等教育第一版社,2014.3指导教师(署名):年月日教研室主任(署名):年月日Word文档.目录1.客户信息系统概括.41.1基本要求.41.2主要功能.41.3设计方法.51.4系统开发的目的.52.整体设计.52.1系统功能模块.52.2系统整体框架.62.3类的分类表.72.4系统重点算法流程图.83.系统运转报告.134.系统评论.174.1系统的特色.194.2系统的弊端.194.3未来可能提出的要求.205.系统调试出现的问题.206.总结.21716道谢.8.参照文件.229.源程序.22Word文档.客户信息管理系统设计报告客户管理系统概括该系统主要办理客户

4、的有关信息。客户信息主要包含:客户编号、客户名称、所在地域、联系方式等内容。地域信息主要包含:编号、名称等内容。达成以下的操作:客户信息、地域信息的录入、改正、删除和查问。1.1基本要求程序运转结果正确,操作方便,界面雅观,逻辑层次清楚,程序结构合理,文档规范清楚。1.2主要功能要求:1)增添功能:能够对客户和地域信息进行增添。显示功能:能够对客户和地域信息进行输出,如未找到,显示出相应的提示信息,如找到,则显示相应信息。删除功能:能够对客户和地域信息进行删除,如未找到,显示出相应的提示信息。4)查找功能:能够按编号对客户和地域信息进行查找,如未找到,显示出Word文档.相应的提示信息。5)改

5、正功能:能够按编号对客户和地域信息进行改正,如未找到,显示出相应的提示信息。6)保存功能:能够把客户和地域信息保存为文件。7)读取功能:可将保存在文件中的人员信息读入到目前系统中,供用户使用。1.3设计方法1)应用系统剖析,成立该系统的功能模块框图以及界面的组织和设计;2)剖析系统中的各个实体与他们之间的关系;3)依据问题描绘,设计系统的类层次;4)达成类层次中各个类的描绘;5)达成类中各个成员函数的定义;6)达成系统的应用模块;7)功能调试。1.4系统开发的目的娴熟掌握C+语言的基本知识和技术;基本掌握面向对象程序设计的基本思路和方法;利用所学的基本知识和技术,解决简单的面向对象程序设计问题

6、;设计一个含有最基本功能的客户信息管理系统。Word文档.整体设计2.1系统功能模块依据问题描绘和要求,系统要求能够按编号显示、查找、增添、删除和保存客户、地域的信息,确立程序起码应当具备以下功能:“录入客户和地域信息、”“查问客户和地域信息”、“增添客户和地域信息”、“删除客户和地域信息”、“改正客户和地域信息”、“输出客户和地域信息”、“数据存盘”基本模块。系统既然拥有“数据存盘”功能客户数据能够保存到磁盘文件,那么也就意味着能够从磁盘文件读出客户数据,所以系统增添了“客户数据装入”模块,以方便用户使用、防止数据重复录入,并定义客户数据文件名:Xinxi.dat。考虑到依据编号查找人员信息

7、功能在“删除客户和地域”、“改正客户和地域”“输出客户和地域信息”、等模块都使用,所以能够考虑设置为一个模块。以下列图:Word文档.删除信息改正信息输出信息查找Find管理员增添信息查找信息保存信息2.2系统整体框架使用面向对象的程序设计思想进行剖析,整个系统波及两大类信息和操作,客户、地域。所以系统波及四个大类:信息类Xinxi(基类)、客户类customer(继承类)、地域类area(继承类)、管理类(友元类)。系统的整体框架就是管理类的定义,主函数中定义一个管理对象,循环显示主菜单并依据用户选择调用管理类的成员函数。1)信息类Xinxi:考虑系统操作的客户信息的数目拥有不确立性,所以考

8、虑使用链表保存、办理客户信息。因为客户和地域信息都包含了地域编码和地域名称,所以信息类包含私有数据成员:编号No1、名称Name1、指针域next以及类型Duty,Duty用来划分是客户信息仍是地域信息,而且考虑到客户和地域信息的输入输出,信息类需要定义公共成员函数以便供客户类和地域类继承使用。2)地域类area:地域类是信息类的公共继承类,继承了信息类的数据成员和成员函数,所以地域类不需要再定义其余数据成员和成员函数。Word文档.3)客户类customer:客户类是信息类的继承类,客户类包含的信息除了地域编码和地域名称还包含客户自己的编码,名称及联系方式,所以客户类里需要此外定义数据成员客

9、户编码No2、客户名称Name1、联系方式num.4)管理类manger:管理类是信息类的友元类,以便接见信息类的私有数据成员和成员函数,在管理类中分别定义增添信息,删除信息,输出信息,查找信息,保存信息,改正信息等函数。2.3类的层次图类名信息类(基类)Xinxi数据成员No1,Name1,Duty,next成员函数Input,Output类名地域类(继承类)area数据成员No1,Name1,Duty,next成员函数Input,Output类名客户类(继承类)customer数据成员No1,Name1,Duty,next,No2,Name2成员函数Input,OutputWord文档.类

10、名管理类(友元类)manger数据成员Xinxi*PL成员函数Clear()manger()Delete()Save()Print()Search()Modify()Load()1.Xinxi类的No1-地域编号,Name1-地域名称,Duty-信息类型,next-指向下一个客户和地域的信息;Xinxi类的Input(),Output()定义为纯虚函数分别表示输入和输出信息,因为定义纯虚函数,所以Xinxi是抽象类,详细输入,输出信息由派生类达成。2.各个派生的类,包含本类对象独有的数据,继承基类共同的数据。3.友元类定义各个函数:voidAdd();/增添voidDelete();/删除vo

11、idModify();/改正voidSearch();/查找voidPrint();/输出Word文档.voidSave();/存盘voidLoad();/装入voidClear();此中:(1)Clear()用于消除人员链表所有结点。(2)Add(),Delete(),Modify(),Print(),Search(),Save(),Load()分别表示系统各个功能模块:增添信息,删除信息,改正改正,输出信息,查问信息,数据存盘,数据装入。2.4系统重点算法流程图(1)主函数流程开始创立管理对象显示菜单接受输入依据输入进行操作输出Word文档.结束(2)manger:Add()开始选择输入类

12、型输入数据,创办新结点结点加入链表结束(3)manger:Delete()开始选择删除类型查找要删除结点结点存在链表删除结点提示未找到Word文档.结束(4)manger:Modify开始选择改正类型查找结点结点存在改正结点提示未找到(5)manger:Save()结束开始翻开数据文件Word文档.遍历链表保存数据封闭文件翻开数据文件保存数据文件封闭文件结束开始6)manger:Print()选择输出种类查找结点结点存在输出信息提示未找到Word文档.结束7)manger:Search()开始选择查找类型查找结点结点存在提示未找到输出信息Word文档.结束(8)manger:Load()开始翻

13、开文件读取基础数据封闭文件翻开文件读取每一条记录文件未结束依据人员种类创办结点链表加入结点Word文档.读取下边一行记录封闭文件结束Word文档.3.系统运转报告(1)管理界面(2)输入信息(3)输出信息Word文档.(4)删除信息(5)改正信息(6)查找信息(7)信息存盘Word文档.4系统评论本部分详细从三方面论述:长处、弊端以及未来可能提出的要求。4.1系统的特色1.流程切合客户管理系统的基本要求。2.操作简单、方便。3.系统扩大简单。因为资料有限,有好多地方还需要更好的完美。4.2系统的弊端1.界面不太雅观、友善,输出和查找时数据和对应的信息没有对齐显示,查察时不太方便。2.同时输入客

14、户信息和地域信息时,不可以同时输出查察,只好查察第一录入的信息;同时输入多个地域信息时不可以所有保存,只好显示第一次输入的信息;当输入客户信息而没输入地域信息时,查察地域信息时其实不会提示没有信息,而是将客户信息输出。总之,只好实现客户信息和地域信息的分别输入和显示。3.文件保存功能没有实现,翻开文件时没有任何记录。Word文档.4.3未来可能提出的要求1.要求界面更为完满,阅读起来方便易懂。2.要求客户信息和地域信息能够联合在一同,实现同时输入、同时保存、同时输出。5.系统调试出现的问题1.编译程序时没有显示任何错误,可是履行时系统会出现程序停止运转的情况,我认为是系统没有为我在删除函数里定

15、义的指针q开拓空间,以下:Xinxiq;q=p;deleteq;p=p-next;Word文档.而后我换了此外一种方法,以下:p2-next=p1-next;/连结deletep1;cout正确删除!n;2.程序编译时会出现没有主函数的错误,原由是括号没有正确般配。3.程序运转时出现无穷循环,是因为输出函数没有停止语句break.总结在此次课程设计中我终收获颇多,让我对编程有了新的认识,平常极少上机,老是在看程序,知足于看懂程序,所以离自己会编程序还有一段差距,此次课程设计固然老师给了参照模板,可是这不过一种思路,需要我们依据自己的问题完美程序,这使得我不得不自己写,看了几遍程序,基本理解了编

16、程的方法,固然一开始出现了好多错误,可是经过多次剖析与改正,最后达成了程序要求。其次,在编程以前必定要思虑,给自己规划好步骤,我在第一周编程时没有仔细阅读问题要求,认为只需对客户信息进行操作,在第二周我已经编好程序准备写设计报告时才发现自己看错了,所以礼拜二下午和礼拜三我又在以前的基础上从头编了这个程序,致使设计报告写的有些匆促,所以,我们在编程以前必定要仔细阅读题目,剖析设计要求,理清思路,这样后边编程时才能顺利进行。所以此次的课程设计让我用了一个相对照较集中的时间去练习我的编程,特Word文档.别是自己的着手能力,加深了对类和对象的理解,提升了自己剖析问题、运用所学知识解决问题的能力,并培

17、育了基本的设计技术。7道谢在此次课程设计中,老师和同学们给了我很大的帮助,在此表示由衷的感谢和真挚的谢意。参照文件1谭浩强.C+面向对象程序设计(第2版第二版)M.清华大学第一版社,2014.1彭召意,朱艳辉,周玉.C+面向对象程序设计课程的实践教课研究J.计算机教育,2015,(5):151-154源程序/#include#includeclassXinxiprotected:intNo1;/编号charName120;/名称intDuty;Xinxi*next;/指针域Word文档.public:Xinxi()next=0;/指针域设置为空virtualXinxi()virtualvoid

18、Input()=0;/从键盘输入数据virtualvoidInput(ifstream&ifs)=0;/从文件输入信息virtualvoidOutput()=0;/向屏幕输出信息virtualvoidOutput(ofstream&ofs)=0;/向文件输出信息friendclassmanger;classcustomer:publicXinxi/客户继承类.;classarea:publicXinxi/地域继承类Word文档.;classmanger/管理员private:Xinxi*PL;voidClear();intmanger:Find(intID,Xinxi*p1,Xinxi*p2)

19、;public:manger();/结构manger();/析构voidAdd();/增添voidDelete();/删除voidModify();/改正voidSearch();/查找voidPrint();/输出voidSave();/存盘voidLoad();/装入;Word文档.manger:manger()/结构(创立一个头结点的链表)customer*p=newcustomer;PL=p;coutnext;deletep;p=PL;voidmanger:Add()coutnext)p=p-next;intch;coutch;创立新结点,录入数据,连结到链表area*ar;custo

20、mer*cu;switch(ch)case1:ar=newarea;ar-Input();p-next=ar;break;case2:cu=newcustomer;cu-Input();/*p-next=cu;break;Word文档.default:return;/*voidmanger:Clear()Xinxi*p=PL-next;while(p)PL-next=p-next;deletep;p=PL-next;/*intmanger:Find(intID,Xinxi*p1,Xinxi*p2)Word文档.*p1=PL-next;*p2=PL;while(*p1)if(*p1)-No1=I

21、D)break;/找到else*p2=*p1;/持续查找*p1=(*p1)-next;return*p1?1:0;voidmanger:Delete()coutnext;Word文档.intch;coutch;coutNo;switch(ch)case0:if(!Find(No,&p1,&p2)coutnext=p1-next;/连结deletep1;cout正确删除!n;break;case1:Word文档.if(!Find(No,&p1,&p2)coutnext=p1-next;/连结deletep1;cout正确删除!n;break;default:return;voidmanger:M

22、odify()coutn*改正信息*n;intNo;intch;Word文档.Xinxi*p1,*p2;Xinxi*p=PL;coutch;coutNo;while(p-next)switch(ch)case0:if(!Find(No,&p1,&p2)coutOutput();/输出本来地域信息p1-Input();/输入新的地域信息cout地域信息改正达成!n;break;Word文档.case1:if(!Find(No,&p1,&p2)coutOutput();/输出本来客户信息p1-Input();/输入新的客户信息coutnext;voidmanger:Print()coutnext;

23、coutch;coutNo;switch(ch)case0:if(!Find(No,&p1,&p2)cout对不起,您需要的地域信息没有找到!n;elsecoutn*地域信息表*n;coutOutput();p=p-next;cout正确输出!n;break;case1:if(!Find(No,&p1,&p2)cout对不起,您需要的客户信息没有找到!n;elsecoutn*地域信息表*n;coutOutput();p=p-next;coutnext;while(p)p-Output(f);p=p-next;f.close();/封闭文件coutbufbufDuty;if(f)switch(Duty)case0:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论