搜档网
当前位置:搜档网 › 客户信息管理系统教学内容

客户信息管理系统教学内容

客户信息管理系统教学内容
客户信息管理系统教学内容

客户信息管理系统

湖南第一师范学院信息科学与工程学院课程设计报告

所属专业:计算机科学与技术

课程名称: C++课程设计

课程设计名称:客户信息管理系统

学号: _________14403090102________

姓名:李碧秋

指导教师:杨恒伏伍智平

2015年 12 月

湖南第一师范学院课程设计任务书

2015 -2016 学年第 1学期

院(部)信息科学与工程学院专业计算机科学与技术班级 14计科1班课程名称: C++课程设计

设计题目:客户信息管理系统

完成期限:自 2015 年 12 月 28 日至 2016 年 1 月 8 日共 2 周

指导教师(签字):年月日教研室主任(签字):年月日

目录

1. 客户信息系统概述 (6)

1.1 基本要求 (6)

1.2 主要功能 (6)

1.3 设计方法 (5)

1.4 系统开发的目的 (7)

2. 总体设计 (5)

2.1 系统功能模块 (5)

2.2 系统总体框架 (6)

2.3 类的分类表 (7)

2.4 系统关键算法流程图 (8)

3. 系统运行报告

(13)

4. 系统评价 (17)

4.1 系统的特点 (19)

4.2 系统的缺点 (19)

4.3 将来可能提出的要求 (20)

5. 系统调试出现的问题 (20)

6. 总结 (21)

7.致谢......................................................................................................................................

(16)

8. 参考文献 (22)

9. 源程序 (22)

客户信息管理系统设计报告

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 类的层次图

1.Xinxi 类的No1-地区编号,Name1-地区名称,Duty-信息类别,next-指向下一个客户和地区的信息;Xinxi类的Input(),Output()定义为纯虚函数分别表示输入和输出信息,由于定义纯虚函数,所以Xinxi是抽象类,具体输入,输出信息由派生类完成。

2.各个派生的类,包含本类对象特有的数据,继承基类共同的数据。

3.友元类定义各个函数:

void Add(); //添加

void Delete(); //删除

void Modify(); //修改

void Search(); //查找

void Print(); //输出

void Save(); //存盘

void Load(); //装入

void Clear();

其中:

(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()

(7)

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开辟空间,如下:Xinxi q;

q=p;

delete q;

p=p->next;

相关主题