版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、湖南第一师范学院信息科学与工程学院课程设计报告所 属 专业:计算机科学与技课 程 名称:C+课程设计课程设计名称:客户信息管理系统学号:_名:指 导 教师:杨恒伏 伍智平2015 年 12 月叮叮小文库叮叮小文库- PAGE 12湖南第一师范学院课程设计任务书2015 -2016 学年第 1 学期院(部) 信息科学与工程学院专业 计算机科学与技术 班级 14 计科1 课程名称: C+课程设计设计题目:客户信息管理系统完成期限:自 2015年12月 28日至2016年 1月 8 日 共 2 周掌握面向对象程序设计语言C+的基本语法掌握C+面向对象设计的思想目的及任务4.掌握VC+6.0与DEV
2、开发工具的使用运用标准C+规范设计应用程序并相应给出软件规格说明书等文档。起止日期2015.12.282015.12.2920进度安排15.12.312016.1.12016.1.42016.1.52016.1.8工作内容选题,系统背景调查与文献资料收集,实验平台构建系统需求分析、系统概要设计、类的设计系统详细设计与编码实现系统测试与完善、文档整理与课程设计报告撰写主要参考资料1郑莉, 董渊, . C+语言程序设计(第4 版(社, 2010.72(美)梅因等著, 金名等译. 数据结构与面向对象程序设计(C+版)(第4 版). 清华大学出版,2012.53梅险, 曲蔚, 孙建业编. C/C+程序
3、设计案例教程实验与实训指导. 高等教育出版社, 2014.3指导教师(签字:年月日教研室主任(签字:年月日目录客户信息系统概述4 HYPERLINK l _TOC_250017 基本要求4 HYPERLINK l _TOC_250016 主要功能4 HYPERLINK l _TOC_250015 设计方法5 HYPERLINK l _TOC_250014 系统开发的目的5 HYPERLINK l _TOC_250013 总体设计5 HYPERLINK l _TOC_250012 系统功能模块5 HYPERLINK l _TOC_250011 系统总体框架6类的分类表7 HYPERLINK l
4、_TOC_250010 系统关键算法流程图8 HYPERLINK l _TOC_250009 系统运行报告13 HYPERLINK l _TOC_250008 系统评价13 HYPERLINK l _TOC_250007 系统的特点15 HYPERLINK l _TOC_250006 系统的缺点15 HYPERLINK l _TOC_250005 将来可能提出的要求15 HYPERLINK l _TOC_250004 系统调试出现的问题15 HYPERLINK l _TOC_250003 6. 总结16 HYPERLINK l _TOC_250002 致16 HYPERLINK l _TOC_
5、250001 参考文献16 HYPERLINK l _TOC_250000 源程序17客户信息管理系统设计报告客户管理系统概述该系统主要处理客户的相关信息。客户信息主要包括:客户编号、客户名称、所在地区、联系方式等内容。地区信息主要包括:编号、名称等内容。完成以下的操作:客户信息、地区信息的录入、修改、删除和查询。基本要求程序运行结果正确,操作方便,界面美观,逻辑层次清楚,程序结构合理, 文档规范清晰。主要功能要求:1)添加功能:能够对客户和地区信息进行添加。示信息,如找到,则显示相应信息。示信息。相应的提示信息。相应的提示信息。保存功能:能够把客户和地区信息保存为文件。设计方法应用系统分析,
6、建立该系统的功能模块框图以及界面的组织和设计;分析系统中的各个实体与他们之间的关系;根据问题描述,设计系统的类层次;完成类层次中各个类的描述;完成类中各个成员函数的定义;完成系统的应用模块;功能调试。系统开发的目的C+语言的基本知识和技能;基本掌握面向对象程序设计的基本思路和方法;利用所学的基本知识和技能,解决简单的面向对象程序设计问题;设计一个含有最基本功能的客户信息管理系统。总体设计系统功能模块根据问题描述和要求,系统要求能够按编号显示、查找、增加、删除和保存 以方便用户使用、避免数据重复录入,并定义客户数据文件名:Xinxi.dat。如下图:删除信息删除信息修改信息输出信息Find管理员
7、添加信息查找信息保存信息系统总体框架Xinxi(基类customer(继承类继承类、管理类(友元类信息类Xinxi:考虑系统操作的客户信息的数量具有不确定性,所以考No1、名称Name1、指针域nextDuty,Duty地区类 area员和成员函数,所以地区类不需要再定义其他数据成员和成员函数。客户类 customer:客户类是信息类的继承类,客户类包括的信息除了No2Name1num.管理类 manger:管理类是信息类的友元类,以便访问信息类的私有数信息,保存信息,修改信息等函数。类的层次图类名类名信息类(基类)Xinxi数据成员No1,Name1,Duty,next成员函数Input,O
8、utput类名类名地区类(继承类)area数据成员No1,Name1,Duty,next成员函数Input,Output类名类名客户类(继承类)customer数据成员成员函数Input,Output类名类名管理类(友元类)manger数据成员Xinxi *PL成员函数Clear()Print()manger()Delete()Save()Search() Modify()Load()Xinxi 类的 No1-地区编号,Name1-地区名称,Duty-信息类别,next向下一个客户和地区的信息;XinxiXinxi出信息由派生类完成。各个派生的类,包含本类对象特有的数据,继承基类共同的数据。友
9、元类定义各个函数:void Add();/添加void Delete();/删除void Modify();/修改void Search();/查找void Print();/输出void Save();/存盘void Load();/装入void Clear();其中:Clear()用于清除人员链表所有结点。Add(),Delete(),Modify(),Print(),Search(),Save(),Load()分别表示系统各 数据装入。系统关键算法流程图开始创建管理对象显示菜单开始创建管理对象显示菜单接受输入根据输入进行操作输出结束(2)manger:Add()开始开始选择输入类别输入数
10、据,创立新结点结点加入链表结束开始选择删除类别开始选择删除类别查找要删除结点结点存在链表删除结点提示未找到结束开始选择修改类别开始选择修改类别查找结点结点存在修改结点提示未找到结束manger:Save()开始开始打开数据文件遍历链表保存数据关闭文件打开数据文件保存数据文件关闭文件结束(6)manger:Print()开始选择输出类型查找结点结点存在提示未找到输出信息结束开始选择查找类别查找结点结点存在提示未找到开始选择查找类别查找结点结点存在提示未找到输出信息结束开始打开文件开始打开文件读取基础数据关闭文件打开文件读取每一条记录文件未结束根据人员类型创立结点链表加入结点读取下面一行记录关闭文
11、件结束叮叮小文库系统运行报告管理界面输入信息输出信息-13叮叮小文库删除信息修改信息查找信息信息存盘-14叮叮小文库叮叮小文库- PAGE 26系统评价本部分具体从三方面阐述:优点、缺点以及将来可能提出的要求。系统的特点流程符合客户管理系统的基本要求。操作简单、方便。系统扩充容易。由于资料有限,有很多地方还需要更好的完善。系统的缺点查看时不太方便。同时输入客户信息和地区信息时,不能同时输出查看,只能查看首先录文件保存功能没有实现,打开文件时没有任何记录。将来可能提出的要求要求界面更加完美 ,阅读起来方便易懂。同时输出。系统调试出现的问题编译程序时没有显示任何错误况,我认为是系统没有为我在删除函
12、数里定义的指针q开辟空间,如下:Xinxi q; q=p; delete q; p=p-next;然后我换了另外一种方法,如下:p2-next=p1-next; /连接delete p1;cout正确删除!n;程序编译时会出现没有主函数的错误,原因是括号没有正确匹配。break.总结要认真阅读题目,分析设计要求,理清思路,这样后面编程时才能顺利进行。学知识解决问题的能力,并培养了基本的设计技能。致谢和诚挚的谢意。参考文献1谭浩强. C+面向对象程序设计(第2版第二版)M. 清华大学出版社,2014.1C+面向对象程序设计课程的实践教学研究J. 计算机教育, 2015, (5): 151-154
13、源程序/#include #include class Xinxiprotected:int No1;/char Name120; / 名 称int Duty;Xinxi *next;/public:Xinxi ()next=0;/指针域设置为空virtual Xinxi()virtual void Input()=0;virtual void Input(ifstream& ifs)=0; virtual void Output()=0;virtual void Output(ofstream& ofs)=0; friend class manger;/从键盘输入数据/从文件输入信息/向屏幕
14、输出信息/向文件输出信息class customer:public Xinxi/客户继承类.;class area:public Xinxi/地区继承类.;class manger/管理员private:Xinxi *PL; void Clear();int manger:Find(int ID,Xinxi *p1,Xinxi *p2);public:manger();/构造manger();/析构void Add();/添加void Delete();/删除void Modify();/修改void Search();/查找void Print();/输出void Save();/存盘voi
15、d Load();/装入;manger:manger()/构造(创建一个头结点的链表)customer *p=new customer; PL=p;coutnext; delete p; p=PL;void manger:Add()coutnext)p=p-next; int ch;coutch;/创建新结点,录入数据,连接到链表area *ar;customer*cu;switch(ch)case 1: ar=new area;p-next=ar;break;case 2: cu=new customer;p-next=cu; break;default:return;/*void mang
16、er:Clear()Xinxi *p=PL-next; while(p)PL-next=p-next; delete p;p=PL-next;/*int manger:Find(int ID,Xinxi *p1,Xinxi *p2)*p1=PL-next;*p2=PL;while(*p1)if(*p1)-No1=ID)break;/找到else*p2=*p1;/继续查找*p1=(*p1)-next;return *p1?1:0;void manger:Delete()coutnext;int ch;cout输入删除的类型0-地区信息,1-客户信息:;coutNo; switch(ch)case
17、 0: if(!Find(No,&p1,&p2)coutnext=p1-next;/delete p1;cout正确删除!n;break;case 1: if(!Find(No,&p1,&p2)coutnext=p1-next;/delete p1;cout正确删除!n;break;default:return;void manger:Modify()coutn*修改信息*n; int No;int ch;Xinxi Xinxi *p=PL;coutch;coutNo; while(p-next)switch(ch)case 0:if(!Find(No,&p1,&p2)coutOutput()
18、;/输出原来地区信p1-Input();/输入新的地区信息cout地区信息修改完成!n;break;case 1:if(!Find(No,&p1,&p2)coutOutput();/输出原来客户信p1-Input();/输入新的客户信息coutnext;void manger:Print()coutnext;cout输入输出的类型0-地区信息,1-客户信息:;coutNo; switch(ch)case 0:if(!Find(No,&p1,&p2)cout对不起,您需要的地区信息没有找到!n;elsecoutn* 地区信息表 *n; coutOutput();p=p-next;cout正确输出
19、!n;break;case 1:if(!Find(No,&p1,&p2)cout对不起,您需要的客户信息没有找到!n;elsen;coutn* 地区信息表 *n;coutOutput(); p=p-next;coutnext; while(p)p-Output(f); p=p-next;f.close();/关闭文件coutbufbufDuty; if(f)switch(Duty)case 0:p2=new area;break; case 1:p2=new default:f.close();return;p-next=p2;/创立新结点p=p-next;f.seekg(t);p-Input(f);break;f.close();/关闭文件void manger:Search()coutn*查找信息*n; int No;Xinxi *p1,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年机关干部压力测试题及答案
- 2023年融媒体记者面试反套路答题指南 附30道真题及高分答案
- 2021东莞乐理等级考试专属模拟题及标准答案
- 2020徐州首创水务面试题库附答案+上岸前辈面经总结
- 2022年消防文员招聘考试易错题型试题及答案 不丢冤枉分
- 2026年小学防灾减灾知识测试题及答案
- 大学初等数论2026年期中测验考试题库及标准答案
- 空间直线的方向向量和平面的法向量课件高二下学期数学湘教版选择性必修第二册
- 二元一次方程组的概念课件2025-2026学年苏科版七年级数学下册
- 感情未破裂但协议书离婚
- 国际道路运输的安全管理制度
- 物业设备巡检计划方案(3篇)
- 快递业安全生产培训课件
- 化工工艺设计培训
- 2025年血透室血传播疾病阴转阳的应急演练脚本
- 应急管理通论(第二版)课件 第9章 应急沟通职能
- 乙酰半胱氨酸的用药护理
- 要素式民事起诉状(侵害著作权及邻接权纠纷)
- 2025年新疆中考化学真题(原卷版)
- 2025年内江市中考地理试题(含答案解析)
- 皮肤外科进修汇报
评论
0/150
提交评论