客户信息管理系统.docx
- 文档编号:2185870
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:29
- 大小:388.01KB
客户信息管理系统.docx
《客户信息管理系统.docx》由会员分享,可在线阅读,更多相关《客户信息管理系统.docx(29页珍藏版)》请在冰豆网上搜索。
客户信息管理系统
湖南第一师范学院信息科学与工程学院
课程设计报告
所属专业:
计算机科学与技术
课程名称:
C++课程设计
课程设计名称:
客户信息管理系统
学号:
_________14403090102________
姓名:
李碧秋
指导教师:
杨恒伏伍智平
2015年12月
湖南第一师范学院课程设计任务书
2015-2016学年第1学期
院(部)信息科学与工程学院专业计算机科学与技术班级14计科1班
课程名称:
C++课程设计
设计题目:
客户信息管理系统
完成期限:
自2015年12月28日至2016年1月8日共2周
目的及任务
1.掌握面向对象程序设计语言
2.C++的基本语法
3.掌握C++面向对象设计的思想
4.掌握VC++6.0与DEVC++开发工具的使用
5.运用标准C++规范设计应用程序
6.遵循软件过程的各个环节进行系统分析、设计、实现、集成、测试,并相应给出软件规格说明书等文档。
进度安排
起止日期
工作内容
2015.12.28
选题,系统背景调查与文献资料收集,实验平台构建
2015.12.29—2015.12.31
系统需求分析、系统概要设计、类的设计
2016.1.1—2016.1.4
系统详细设计与编码实现
2016.1.5—2016.1.8
系统测试与完善、文档整理与课程设计报告撰写
主要参考资料
[1]郑莉,董渊,何江舟著.C++语言程序设计(第4版)(清华大学出版社,2010.7
[2](美)梅因等著,金名等译.数据结构与面向对象程序设计(C++版)(第4版).清华大学出版社,2012.5
[3]梅险,曲蔚,孙建业编.C/C++程序设计案例教程实验与实训指导.高等教育出版社,2014.3
指导教师(签字):
年月日
教研室主任(签字):
年月日
3.系统运行报告...................................................................................................13
7.致谢............................................................................................................................................16
客户信息管理系统设计报告
1.客户管理系统概述
该系统主要处理客户的相关信息。
客户信息主要包括:
客户编号、客户名称、所在地区、联系方式等内容。
地区信息主要包括:
编号、名称等内容。
完成以下的操作:
客户信息、地区信息的录入、修改、删除和查询。
1.1基本要求
程序运行结果正确,操作方便,界面美观,逻辑层次清楚,程序结构合理,文档规范清晰。
1.2主要功能
要求:
1)添加功能:
能够对客户和地区信息进行添加。
2)显示功能:
能够对客户和地区信息进行输出,如未找到,显示出相应的提示信息,如找到,则显示相应信息。
3)删除功能:
能够对客户和地区信息进行删除,如未找到,显示出相应的提示信息。
4)查找功能:
能够按编号对客户和地区信息进行查找,如未找到,显示出
相应的提示信息。
5)修改功能:
能够按编号对客户和地区信息进行修改,如未找到,显示出
相应的提示信息。
6)保存功能:
能够把客户和地区信息保存为文件。
7)读取功能:
可将保存在文件中的人员信息读入到当前系统中,供用户使用。
1.3设计方法
1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;
2)分析系统中的各个实体与他们之间的关系;
3)根据问题描述,设计系统的类层次;
4)完成类层次中各个类的描述;
5)完成类中各个成员函数的定义;
6)完成系统的应用模块;
7)功能调试。
1.4系统开发的目的
1.熟练掌握C++语言的基本知识和技能;
2.基本掌握面向对象程序设计的基本思路和方法;
3.利用所学的基本知识和技能,解决简单的面向对象程序设计问题;
4.设计一个含有最基本功能的客户信息管理系统。
2.总体设计
2.1系统功能模块
根据问题描述和要求,系统要求能够按编号显示、查找、增加、删除和保存客户、地区的信息,确定程序至少应该具备如下功能:
“录入客户和地区信息、”“查询客户和地区信息”、“增加客户和地区信息”、“删除客户和地区信息”、“修改客户和地区信息”、“输出客户和地区信息”、“数据存盘”基本模块。
系统既然具有“数据存盘”功能——客户数据可以保存到磁盘文件,那么也就意味着可以从磁盘文件读出客户数据,所以系统增加了“客户数据装入”模块,以方便用户使用、避免数据重复录入,并定义客户数据文件名:
Xinxi.dat。
考虑到根据编号查找人员信息功能在“删除客户和地区”、“修改客户和地区”“输出客户和地区信息”、等模块都使用,所以可以考虑设置为一个模块。
如下图:
2.2系统总体框架
使用面向对象的程序设计思想进行分析,整个系统涉及两大类信息和操作,客户、地区。
所以系统涉及四个大类:
信息类Xinxi(基类)、客户类customer(继承类)、地区类area(继承类)、管理类(友元类)。
系统的总体框架就是管理类的定义,主函数中定义一个管理对象,循环显示主菜单并根据用户选择调用管理类的成员函数。
(1)信息类Xinxi:
考虑系统操作的客户信息的数量具有不确定性,所以考虑使用链表保存、处理客户信息。
因为客户和地区信息都包括了地区编码和地区名称,所以信息类包含私有数据成员:
编号No1、名称Name1、指针域next以及类别Duty,Duty用来区分是客户信息还是地区信息,并且考虑到客户和地区信息的输入输出,信息类需要定义公共成员函数以便供客户类和地区类继承使用。
(2)地区类area:
地区类是信息类的公共继承类,继承了信息类的数据成员和成员函数,所以地区类不需要再定义其他数据成员和成员函数。
(3)客户类customer:
客户类是信息类的继承类,客户类包括的信息除了地区编码和地区名称还包括客户本身的编码,名称及联系方式,所以客户类里需要另外定义数据成员客户编码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,Output
类名
管理类(友元类)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();//删除
voidModify();//修改
voidSearch();//查找
voidPrint();//输出
voidSave();//存盘
voidLoad();//装入
voidClear();
其中:
(1)Clear()用于清除人员链表所有结点。
(2)Add(),Delete(),Modify(),Print(),Search(),Save(),Load()分别表示系统各个功能模块:
增加信息,删除信息,修改修改,输出信息,查询信息,数据存盘,数据装入。
2.4系统关键算法流程图
(1)主函数流程
(2)manger:
:
Add()
(3)manger:
:
Delete()
(4)manger:
:
Modify
(5)manger:
:
Save()
(6)manger:
:
Print()
(7)manger:
:
Search()
(8)manger:
:
Load()
3.系统运行报告
(1)管理界面
(2)输入信息
(3)输出信息
(4)删除信息
(5)修改信息
(6)查找信息
(7)信息存盘
4.系统评价
本部分具体从三方面阐述:
优点、缺点以及将来可能提出的要求。
4.1系统的特点
1.流程符合客户管理系统的基本要求。
2.操作简单、方便。
3.系统扩充容易。
由于资料有限,有很多地方还需要更好的完善。
4.2系统的缺点
1.界面不太美观、友好,输出和查找时数据和对应的信息没有对齐显示,查看时不太方便。
2.同时输入客户信息和地区信息时,不能同时输出查看,只能查看首先录入的信息;同时输入多个地区信息时不能全部保存,只能显示第一次输入的信息;当输入客户信息而没输入地区信息时,查看地区信息时并不会提示没有信息,而是将客户信息输出。
总之,只能实现客户信息和地区信息的分别输入和显示。
3.文件保存功能没有实现,打开文件时没有任何记录。
4.3将来可能提出的要求
1.要求界面更加完美,阅读起来方便易懂。
2.要求客户信息和地区信息可以结合在一起,实现同时输入、同时保存、同时输出。
5.系统调试出现的问题
1.编译程序时没有显示任何错误`,但是执行时系统会出现程序停止运行的情况,我认为是系统没有为我在删除函数里定义的指针q开辟空间,如下:
Xinxiq;
q=p;
deleteq;
p=p->next;
然后我换了另外一种方法,如下:
p2->next=p1->next;//连接
deletep1;
cout<<"正确删除!
\n";
2.程序编译时会出现没有主函数的错误`,原因是括号没有正确匹配。
3.程序运行时出现无限循环,是因为输出函数没有终止语句break.
6.总结
在这次课程设计中我终收获颇多,让我对编程有了新的认识,平时很少上机,总是在看程序,满足于看懂程序,因此离自己会编程序还有一段差距,这次课程设计虽然老师给了参考模板,但是这只是一种思路,需要我们根据自己的问题完善程序,这使得我不得不自己写,看了几遍程序,基本理解了编程的方法,虽然一开始出现了很多错误,但是经过多次分析与修改,最后完成了程序要求。
其次,在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 客户 信息管理 系统