1、销售人员管理系统- 91 -2020年5月29日文档仅供参考吉 首 大 学 JISHOU UNIVERSITY 课程设计报 告 书 题 目 销售人员管理系统 作 者 陈 结 马少仁 刘慧惠 胡金欢 所属学院 软件服务外包学院 专业年级 软件工程 级 指导老师 黄 云 职称 写作时间 12月 至 年1月 吉首大学教务处制目 录 一、 前 言- 2 -1. 功能分析- 2 -2. 人员分配- 3 -3. 进度安排- 3 -二、 概要设计- 4 -1. 系统的目标- 4 -2. 系统的功能结构- 4 -三、 详细设计- 5 -1. 主函数模块设计- 6 -2. 功能1模块设计- 7 -3. 功能2模
2、块设计- 8 -4. 功能3模块设计-10-5. 功能4模块设计-13-6. 功能5模块设计-17-7. 功能6模块设计-17-8. 功能7模块设计- 19-9. 功能8模块设计- 20-10. 功能9模块设计- 21-11. 功能10模块设计- 23-12. 功能11模块设计- 23-四、 源代码及调试- 24 -1. 源代码- 24 -2. 测试1- 41 -3. 测试2- 42 -五、 特殊问题及解决方法- 42 -1. 问题1- 42 -2. 问题2- 42 -3. 问题3- 42 -六、 总结与体会- 42 -七、 参考文献- 43 - 销售人员管理系统 一、前 言1. 功能分析本系
3、统是一个对公司销售人员信息进行录入、增加、删除、修改和查询的管理应用软件,用户能够对文件中存储的销售人员信息进行查询、排序和浏览,以及了解销售人员基本信息等。该软件给用户提供了一个简单的人机界面,根据用户输入的内容进行相应的操作。其相关功能及分析如下:、用户验证:根据用户输入的用户名和密码判断是否合法用户(合法用户能够不只一个),并进行相应处理。、提供系统操作菜单:使用户能够经过菜单进行功能选择,并能够任意多次选择执行不同功能,直到用户选择”退出程序”才终止程序的执行。、创立销售人员信息文件:用户根据提示输入编号、姓名、负责区域(东城区、西城区、海淀区、朝阳区等)、销售业绩(用金额表示)、联系
4、电话即可创立好用户需要的信息。、增加销售人员信息:能够根据用户的要求增加销售人员的信息。、删除销售人员信息:由用户指定要删除的条件对销售人员信息进行删除,例如:按照编号或姓名或区域进行删除。、修改销售人员信息:能够根据用户指定要修改的条目对信息进行相应的修改,例如:能够根据用户指定的编号或姓名或区域或销售业绩或电话号码进行修改。、查询销售人员信息:能够根据用户指定要查询的条目查询到相关信息,例如:用户能够按照编号或姓名或区域或销售业绩或电话查询到满足条件的销售人员的相关信息。、浏览全部销售人员信息:经过存储文件的函数能够查看销售人员信息,而且该信息是以表格的形式显示。、统计并输出指定区域销售情
5、况:可根据用户提供的要统计的区域对该区域的销售情况进行统计并能够以表格格式输出统计结果。、对销售人员业绩信息进行排序:根据用户输入的销售人员的信息对这些信息进行排序并输出排序结果。2. 人员分配小组组长:陈结小组成员:胡金欢、马少仁、刘慧惠项目分工:陈结:ppt的制作、界面的制作、主菜单函数、创立销售人员信息、修改销售人员信息、浏览全部销售人员信息、数据的文件保存、打开随机储存文件。胡金欢:课程设计报告文档和查询销售人员的信息。马少仁:增加销售人员信息和删除销售人员信息。刘慧惠:统计并输出指定区域销售情况、指定销售人员业绩、对销售人员业绩信息进行排序。3. 进度安排 12月20日 12月29日
6、:制作主函数和主界面。 12月30日 12月30日:查询销售人员的信息;统计并输出指定区域销售情况、指定销售人员业绩;增加销售人员信息;修改销售人员信息;浏览全部销售人员信息。 12月31日 12月31日:数据的文件保存;对销售人员业绩信息进行排序;删除销售人员信息;课程设计报告文档(大部分)。 1月1日 1月4日:对界面的设计和系统的调试;完成课程设计报告文档;添加程序注释;制作PPT。 1月5日 1月5日:讨论关于答辩的问题,打印所需资料。二、概要设计1. 系统的目标先验证用户的信息,给用户提供一个主菜单使用户能够根据主菜单上的提示输入操作项选项,用户便能够进行一系列对销售人员信息的操作,
7、例如用户能够对文件中存储的销售人员信息进行查询、排序、浏览、删除、统计和增加等操作。2. 系统的功能结构 主菜单函数的功能:给用户提供主菜单,使用户能够经过菜单进行功能选择,并能够任意多次选择执行不同功能,直到用户选择”退出程序”才终止程序的执行。open()函数的功能:用于给用户随机访问文件,即打开相关文件。user()函数的功能:用来检验用户的信息,根据用户输入的用户名和密码判断是否合法用户,并进行相应处理。found()函数的功能:用于创立销售人员信息,用户根据提示输入编号、姓名、负责区域(东城区、西城区、海淀区、朝阳区等)、销售业绩(用金额表示)、联系电话即可创立好用户需要的信息。ad
8、d()函数的功能:能够根据用户的要求增加销售人员的信息。cancel()函数的功能:完成销售人员信息的删除,由用户指定要删除的条件对销售人员信息进行删除,例如:按照编号或姓名或区域进行删除。revamp()函数的功能:能够根据用户指定要修改的条目对信息进行相应的修改,例如:能够根据用户指定的编号或姓名或区域或销售业绩或电话号码进行修改。remand()函数的功能:能够根据用户指定要查询的条目查询到相关信息,例如:用户能够按照编号或姓名或区域或销售业绩或电话查询到满足条件的销售人员的相关信息。scanf()函数的功能:以表格的形式显示用户要浏览的销售人员的信息。statistic()函数的功能:
9、统计并输出指定区域销售情况。可根据用户提供的要统计的区域对该区域的销售情况进行统计并以表格格式输出统计结果。sort()函数的功能:对销售人员业绩信息进行排序。根据用户输入的销售人员的信息对这些信息进行排序并输出排序结果。三、详细设计详细设计文档应该包括对每一个对象类的详细描述,以及对对象类的属性和方法的详细描述。写出算法、流程图。详细设计文档还应该把总体设计文档中所设计的其它内容进一步充实。最后详细设计文档中应该对本系统中关键的问题或者你认为自己最满意的设计内容做详细的说明和归纳性总结。1. 主函数模块设计(1)模块概述int main() int result,function,n; in
10、t flag2 = 1; user();/用户验证 system(cls);/清屏 n=found();/创立销售人员信息 while(flag2) system(cls);/清屏 system(color 9f);/控制界面颜色 printf(n*欢迎菜单操作*n); printf(ttt1:增加销售人员信息n); printf(ttt2:删除销售人员信息:n); printf(ttt3:修改销售人员信息n); printf(ttt4:查询销售人员信息n); printf(ttt5:浏览全部销售人员信息n); printf(ttt6:统计并输出指定区域销售情况、指定销售人员业绩和n); pr
11、intf(ttt7:对销售人员业绩信息进行排序n); printf(ttt8:打开随机储存文件n); printf(ttt9:退出服务n); printf(n*n); printf(请选择输入功能数字: ); scanf(%d,&function); if(function=1)/增加销售人员信息 n=add(n); else if(function=2)/删除销售人员信息 n=cancel(n); else if(function=3)/修改销售人员信息 revamp(n); else if(function=4)/查询销售人员信息 demand(n); else if(function=5
12、)/浏览全部销售人员信息 scan(n); else if(function=6)/统计并输出指定区域销售情况、指定销售人员业绩 statistics(n); else if(function=7)/对销售人员业绩信息进行排序 sort(n); else if(function=8)/打开随机储存文件 open(); else if(function=9) break; else printf(亲,输入有误n); printf(n输入返回主菜单操作); getchar();getchar(); (2)技术分析:运用if条件语句实现主菜单选择的功能。(3)功能实现: 实现主菜单的选择界面。 2.
13、 功能1模块设计(1)模块概述int add(int n)/增加销售人员信息 int m; while( system(cls),/清屏 system(color 9f),/控制界面颜色 printf(n*欢迎进入增加销售人员信息*n), printf(ttt1:增加销售人员信息n), printf(ttt2:退出n), printf(n*n), printf(请选择输入功能数字: ), scanf(%d,&m)!=EOF) if(m=1)/增加的销售人员信息 printf(请输入新添人员编号:); scanf(%s,salen.num); printf(请输入新添人员姓名:); scanf(
14、%s,salen.name); printf(请输入新添人员负责区域:); scanf(%s,salen.area); printf(请输入新添人员销售业绩:); scanf(%d,&salen.money); printf(请输入新添人员联系电话:); scanf(%s,salen.phone); n+; text(n);/数据的文件保存 printf(n*n), printf(请按结束该次添加); getchar();getchar(); else return n; return n;(2)技术分析:当if条件成立时,用户能够根据提示输入要添加的销售人员的相关信息,并将增加的信息返回到主
15、函数中。(3)功能实现:根据用户的需求按条件增加销售人员的相关信息3. 功能2模块设计(1)模块概述int cancel(int n)/删除销售人员信息 int i,k,m,leap=1; struct salesman sale1; while( system(cls),/清屏 system(color 9f),/控制界面颜色 printf(n*欢迎进入删除销售人员信息*n), printf(ttt1:按照编号删除n), printf(ttt2:按照姓名删除n), printf(ttt3:按照电话删除n), printf(ttt4:退出该服务n), printf(n*n), printf(请
16、选择输入功能数字: ), scanf(%d,&m)!=EOF) if(m=1)/按照编号删除 printf(请输入你要删除人员的编号:); scanf(%s,sale1.num); for(i=0;in;i+) if(strcmp(sale1.num,salei.num)=0)/找出删除人员的数组下标 leap=0; printf(n*n), printf(删除成功n); break; if(leap) printf(亲,输入有误按返回操作菜单n); getchar();getchar(); else if(m=2)/按照姓名删除 printf(请输入你要删除人员的姓名:); scanf(%s
17、,sale1.name); for(i=0;in;i+) if(strcmp(sale1.name,salei.name)=0)/找出删除人员的数组下标 leap=0; printf(n*n), printf(删除成功n); break; if(leap) printf(亲,输入有误按返回操作菜单n); getchar();getchar(); else if(m=3)/按照电话删除 printf(请输入你要删除人员的电话:); scanf(%s,sale1.phone); for(i=0;in;i+) if(strcmp(sale1.phone,salei.phone)=0)/找出删除人员的
18、数组下标 leap=0; printf(n*n), printf(删除成功n); break; if(leap) printf(亲,输入有误按返回操作菜单n); getchar();getchar(); else return 0; for(k=i;kn;k+)/进行数据的从新整合 strcpy(salek.num,salek+1.num); strcpy(salek.name,salek+1.name); strcpy(salek.area,salek+1.area); salek.money=salek+1.money; strcpy(salek.phone,salek+1.phone);
19、 getchar(); text(n-1);/数据的文件保存 return (n-1); (2)技术分析:该函数内包含一个小菜单,用户能够根据菜单进行选择要删除的信息内容。实现该功能的是if条件语句,当输入的信息满足哪个条件就按照其相关的语句继续运行,最后将需返回的值返回主函数。(3)功能实现:根据用户的要求按条件删除销售人员的相关信息。4. 功能3模块设计(1)模块概述int revamp(int n)/修改销售人员信息 int i,m,leap; struct salesman sale1; long money1; while( system(cls),/清屏 system(color
20、9f),/控制界面颜色 leap=1, printf(n*欢迎进入修改销售人员信息*n), printf(ttt1:按照编号修改n), printf(ttt2:按照姓名修改n), printf(ttt3:按照电话修改n), printf(ttt4:退出该服务n), printf(n*n), printf(请选择输入功能数字: ), scanf(%d,&m)!=EOF) if(m=1) printf(请输入你要修改人员的编号:); scanf(%s,sale1.num); for(i=0;in;i+) if(strcmp(sale1.num,salei.num)=0)/找到并修改指定人员的信息
21、printf(请输入要修改人员姓名:); scanf(%s,sale1.name); printf(请输入要修改人员负责区域:); scanf(%s,sale1.area); printf(请输入要修改人员销售业绩:); scanf(%d,&sale1.money); printf(请输入要修改人员联系电话:); scanf(%s,sale1.phone); salei=sale1; text(n);/数据的文件保存 printf(亲,修改成功按返回操作菜单n); getchar();getchar(); leap=0; if(leap) printf(亲,输入有误按返回操作菜单n); get
22、char();getchar(); else if(m=2) printf(请输入你要修改人员的姓名:); scanf(%s,sale1.name); for(i=0;in;i+) if(strcmp(sale1.name,salei.name)=0)/找到并修改指定人员的信息 printf(请输入要修改人员编号:); scanf(%s,sale1.num); printf(请输入要修改人员负责区域:); scanf(%s,sale1.area); printf(请输入要修改人员销售业绩:); scanf(%d,&sale1.money); printf(请输入要修改人员联系电话:); sca
23、nf(%s,sale1.phone); salei=sale1; text(n);/数据的文件保存 printf(亲,修改成功按返回操作菜单n); getchar();getchar(); leap=0; if(leap) printf(亲,输入有误按返回操作菜单n); getchar();getchar(); else if(m=3) printf(请输入你要修改人员的电话:); scanf(%s,sale1.phone); for(i=0;in;i+) if(strcmp(sale1.phone,salei.phone)=0)/找到并修改指定人员的信息 printf(请输入要修改人员编号:
24、); scanf(%s,sale1.num); printf(请输入要修改人员姓名:); scanf(%s,sale1.name); printf(请输入要修改人员负责区域:); scanf(%s,sale1.area); printf(请输入要修改人员销售业绩:); scanf(%d,&sale1.money); salei=sale1; text(n);/数据的文件保存 printf(亲,修改成功按返回操作菜单n); getchar();getchar(); leap=0; if(leap) printf(亲,输入有误按返回操作菜单n); getchar();getchar(); else
25、 return 0; getchar(); printf(n*n); (2)技术分析:运用for语句去查找要修改的内容;创立了一个小菜单(让用户选择修改的方式)再经过if条件选择修改方式并进行相应的修改。(3)功能实现:根据用户的要求对销售人员信息进行相应的修改。5. 功能4模块设技(1)模块概述int demand(int n)/查询销售人员信息 char dongn; int i,flag=0,m,k; long mon; while( system(cls),/清屏 system(color 9f),/控制界面颜色 printf(n*欢迎进入查询菜单操作*n), printf(ttt1:
26、按编号查询n), printf(ttt2:按姓名查询n), printf(ttt3:按负责区域查询n), printf(ttt4:按销售业绩查询n), printf(ttt5:按联系电话查询n), printf(ttt6:返回主菜单n), printf(n*n), printf(请选择输入功能数字: ), scanf(%d,&m)!=EOF) getchar(); if(m=1) printf(请输入欲查询的人员的编号:); gets(dong); for(i=0;in;i+) if(strcmp(dong,salei.num)=0)/找到指定人员的数组下标 flag=1; k=i; if(f
27、lag!=1) printf(对不起!没有可供您查询的内容。); if(flag=1)/输出查询的人员的信息 printf(编号:%sn姓名:%sn负责区域:%sn销售业绩:%ldn联系电话:%sn,salek.num,salek.name,salek.area,salek.money,salek.phone); printf(n按返回菜单); getchar(); continue; if(m=2) printf(请输入欲查询的人员的姓名:); gets(dong); for(i=0;in;i+) if(strcmp(dong,salei.name)=0)/找到指定人员的数组下标 flag=1; k=i;
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100