C语言销售人员基本信息管理系统课程设计_第1页
C语言销售人员基本信息管理系统课程设计_第2页
C语言销售人员基本信息管理系统课程设计_第3页
C语言销售人员基本信息管理系统课程设计_第4页
C语言销售人员基本信息管理系统课程设计_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、销售人员管理系统一系统描述2二系统设计2三详细设计21存储结构22.main()主函数33.登陆界面34.add()增加函数(编辑)45.amend()修改函数46.remove()删除函数57.show_student()单个显示信息函数58.show_class()显示整个信息函数6四测试结果7五使用说明7六参考文献8七附录9八课程设计体会14销售人员基本信息管理系统一系统描述本系统是一个对公司销售人员信息进行录入、增加、删除、修改和查询的管理应用软件,用户可以对文件中存储的销售人员信息进行查询和排序、浏览,了解销售人员基本信息以及销售任务完成情况等信息。该软件给用户提供了一个简单的人机界

2、面,用户可以根据提示输入操作项并进行一系列对销售人员管理的操作。二系统设计本程序利用结构体数组完成对销售人员基本信息的动态管理。可以对销售人员基本信息进行添加、查询、编辑、删除、分组等,其功能模块如图1所示。主程序登陆界面增加修改删除显示退出三详细设计1存储结构将一个销售员记录当作一个数组元素,则数组中每一个元素的类型为结构体类型。结构体类型如下:struct info /定义结构体info,用于存储销售员信息 char name20; /姓名 char nu20; /电话号码 char stuid10; /编号 char money10; /销售业绩char area10; /区域 char

3、 specialty20; /部门 char classid20; /小组stu100;int j=0;int main(void) /主函数 /*登陆界面设计*/2.main()主函数采用模块化设计,功能放在各模块中实现。主函数是程序的入口,在其中声明一些必要的变量,作一无限循环程序,循环体为一个switch语句,该语句的条件值是通过调用主菜单函数得到的返回值,根据该返回值调用相应的各功能函数,同时要设置一个循环结束条件,以免造成死循环。3.登陆界面欢迎界面中列出了功能简介,界面如图2所示。登陆界面列出了所有功能选项通过printf()函数在屏幕上绘制一个菜单,将菜单进行编号,并显示一个提示

4、输入选项,输入0-5之间的数字。输入选项就是输入菜单编号,该输入项将作为函数的返回值,带回到主函数,主函数根据这个数字调用相应的功能函数。4.add()增加函数(编辑)当在主菜单中输入了1,表明选择了输入记录功能项,即为结构体数组元素赋值。由于所定义的数组的大小往往大于实际的记录数,所以要确定输入的记录数“n”,然后用for循环语句循环n次,按照提示逐个输入销售员信息,输入编号(字符串不超过10个字符)、姓名(字符串不超过10个字符)、每输入一个数就按一下回车健,当提示输入编号时,当输入n个记录后,则循环结束,返回记录数到主函数。输入界面如图3所示。5.amend()修改函数修改记录需要输入修

5、改的销售员编号和新记录信息。输入要修改记录的信息,保存到临时变量temp中,确定新记录,利用for循环在数组中查找编号为num的记录,得到该记录所在的序号i,从最后一条记录开始,依次向后移动记录,即第n-l条记录移动到第n条记录位置,第n-2条记录移动到第n-1条记录位置,直到第i条记录移动到第i+l条记录位置,然后将新信息存入到第i条记录位置,最后使记录数加1。6.remove()删除函数删除指定编号的销售员记录。首先输入要删除记录的编号,输入后根据编号利用for循环查找记录,如果没找到,则输出没找到信息;否则,删除记录。要删除数组中的某一条记录,实际所做的操作是将其后继记录依次前移一条,所

6、以,删除第i条记录,用for语句,从i+1条记录开始,依次将每个字段拷贝到前一条记录的相应字段,即覆盖了前一条记录,达到前移的目的,直到最后一条记录为止,最后使记录数减1。7.show_student()单个显示信息函数 根据单个销售员编号,显示其信息 system("cls"); printf("nt需要显示的销售员编号:"); scanf("%s",a); for(z=0;z<j;z+) if(strcmp(stuz.stuid,a)=0) flag=1; system("cls"); printf(&q

7、uot;nt姓名:%s",); printf("nnt电话号码:%s",stuz.nu); printf("nnt销售业绩:%s",stuz.money); printf("nnt区域:%s",stuz.area); printf("nnt部门:%s",stuz.specialty); printf("nnt小组:%s",stuz.classid); printf("nnt编号:%s",stuz.stuid); printf("nnt按任

8、意键返回上级菜单."); getch(); 8.show_class()显示整个信息函数根据小组编号显示整个小组编号 system("cls"); printf("nt需要显示的销售小组号:"); scanf("%s",a); for(z=0;z<j;z+) if(strcmp(stuz.classid,a)=0) flag=1; system("cls"); printf("t%s%s基本信息n",stuz.specialty,stuz.classid); for(x=0;x&

9、lt;j;x+) if(strcmp(stux.classid,a)=0) printf("nnt姓名:%s",); printf("nt电话号码:%s",stuz.nu); printf("nt销售业绩:%s",stuz.money); printf("nt区域:%s",stuz.area); printf("nt部门:%s",stuz.specialty); printf("nt小组:%s",stuz.classid); printf("nt编

10、号:%s",stuz.stuid); printf("nnt按任意键返回上级菜单."); getch(); 四测试结果二号销售员信息一号组成员信息五使用说明该程序可输入销售员信息,并对该信息可以进行修改,删除等,将销售员编号输入,可显示单人信息,或输入小组编号,显示全小组编号。六参考文献1谭浩强.C语言程序设计.北京:清华大学出版社,2004.2张泽红等.C语言程序设计.北京:电子工业出版社,2007.3何钦铭等.C语言程序设计.北京:高等教育出版社,2008.七附录#include<stdio.h>#include<windows.h>#

11、include<conio.h>int add(); /增加记录int amend(); /修改记录int remove(); /删除记录int show_student(); /显示单个销售员记录int show_class(); /显示整个小组记录struct info /定义结构体info,用于存储销售员信息 char name20; /姓名 char nu20; /电话号码 char stuid10; /编号 char money10; /销售业绩 char area10; /区域 char specialty20; /部门 char classid20; /小组 stu1

12、00;int j=0;int main(void) /主函数 /*登陆界面设计*/char gongnengxuanzhe; int flag=1; system("cls"); printf("n"); printf("tttt 欢迎n"); printf("nnt尊敬的用户, 非常感谢您使用本系统 , 您的完美体验将是我们前进的方向 !nnn"); printf("t系统功能简介:nnn"); printf("tt:通过键盘输入某位售货员的销售证信息。nn"); prin

13、tf("tt:给定编号,显示某位售货员的销售证信息。nn"); printf("tt:给定某个部门的编号,显示该部门所有销售员的销售证信息。nn"); printf("tt:给定某位销售员的编号,修改该销售员的销售证信息。nn"); printf("tt:给定某位销售员的编号,删除该销售员的销售证信息。nn"); printf("t按任意键进入系统."); getch(); do system("cls"); printf("nnn"); printf(&

14、quot; 尊敬的用户 ,欢迎您使用本系统 !n"); printf("nnn"); printf(" 1.增加销售员信息nn"); printf(" 2.修改销售员信息nn"); printf(" 3.删除销售员信息nn"); printf(" 4.显示单个销售员信息nn"); printf(" 5.显示整个小组销售员信息nn"); printf(" 0.退出系统nnnn"); printf(" 请选择您需要使用的功能:")

15、; gongnengxuanzhe=getch(); switch(gongnengxuanzhe) case '1':add();break; /增加记录 case '2':amend();break; /修改记录 case '3':remove();break; /删除记录 case '4':show_student();break; /显示个人记录 case '5':show_class();break; /显示整小组记录 case '0':flag=0;break; /退出 default:

16、 printf("nn 您的输入有误,请仔细阅读使用说明!"); printf("n 任意键继续."); getch(); while(flag=1); system("cls"); printf("nnnnnnnnnnt尊敬的用户,非常感谢您的使用,您对于完美的追求是我们唯一的动力!"); printf("nnttt 按任意键退出系统."); getch(); return 0;int add() /增加销售员信息函数 char flag='1' do system("

17、;cls"); printf("nt姓名:"); /输入姓名 scanf("%s",&); /显示姓名 printf("nnt电话号码:"); /输入电话号码 scanf("%s",&stuj.nu); /显示电话号码 printf("nnt销售业绩:"); /输入销售业绩 scanf("%s",&stuj.money); /显示销售业绩 printf("nnt区域:"); /输入区域 scanf(&qu

18、ot;%s",&stuj.area); /显示区域 printf("nnt部门:"); /输入部门 scanf("%s",&stuj.specialty); /显示部门 printf("nnt小组:"); /输入小组号 scanf("%s",&stuj.classid); /显示小组号 printf("nnt编号:"); /输入编号 scanf("%s",&stuj.stuid); /显示编号 j+; printf("nt继

19、续增加请键入1,返回请键入其他任意键:"); getchar(); flag=getchar(); while(flag='1'); return 0;int amend() /修改销售员信息函数 if(j=0) system("cls"); printf("nnnnnnnnnntt 系统无任何可以修改的记录,请先行输入数据!"); printf("nnttt 按任意键返回."); getch(); return 0; char a20; int z; int flag=0; do system("

20、cls"); printf("nt需要修改的销售员编号:");/输入需要修改的销售员的编号 scanf("%s",a); for(z=0;z<j;z+) if(strcmp(stuz.stuid,a)=0) flag=1; break; /break退出后,z+不会执行 if(flag=0) printf("t对不起,你请求销售员信息不存在,请核实后重试!n"); printf("t按任意键继续."); getch(); while(flag=0); system("cls");

21、 printf("nt姓名:"); /输入姓名 scanf("%s",&);/显示姓名 printf("nnt电话号码:"); /输入电话号码 scanf("%s",&stuz.nu);/显示电话号码 printf("nnt销售业绩:");/输入销售业绩 scanf("%s",&stuz.money);/显示销售业绩 printf("nnt区域:"); /输入区域 scanf("%s",&

22、;stuz.area);/显示区域 printf("nnt部门:");/输入部门 scanf("%s",&stuz.specialty);/显示部门 printf("nnt小组:");/输入小组号 scanf("%s",&stuz.classid); /显示小组号 printf("nnt编号:");/输入编号 scanf("%s",&stuz.stuid); /显示编号 return 0;int remove() /删除销售员信息函数 if(j=0)

23、system("cls"); printf("nnnnnnnnnntt 系统无任何可以删除的记录,请先行输入数据!"); printf("nnttt 按任意键返回."); getch(); return 0; char a20; int z; int x; int flag=0; do system("cls"); printf("nt需要删除的销售员编号:"); scanf("%s",a); for(z=0;z<j;z+) if(strcmp(stuz.stuid,a

24、)=0) flag=1; for(x=z;x<j;x+) /从最后一条记录开始依次后移记录,腾出i位置 strcpy(,stux+1.name); strcpy(stux.nu,stux+1.nu); strcpy(stux.money,stux+1.money); strcpy(stux.area,stux+1.area); strcpy(stux.specialty,stux+1.specialty); strcpy(stux.classid,stux+1.classid); strcpy(stux.stuid,stux+1.stuid); strcpy(stux.

25、stuid,stux+1.stuid); j-; printf("nt删除成功!"); printf("nt按任意键返回上级菜单."); getch(); if(flag=0) printf("t对不起,你请求销售员信息不存在,请核实后重试!n"); printf("t按任意键继续."); getch(); while(flag=0); return 0;int show_student() /单个显示销售员信息函数 if(j=0) system("cls"); printf("nnn

26、nnnnnnntt 系统无任何可以显示的记录,请先行输入数据!"); printf("nnttt 按任意键返回."); getch(); return 0; char a20; int z; int flag=0; do system("cls"); printf("nt需要显示的销售员编号:"); scanf("%s",a); for(z=0;z<j;z+) if(strcmp(stuz.stuid,a)=0) flag=1; system("cls"); printf(&qu

27、ot;nt姓名:%s",); printf("nnt电话号码:%s",stuz.nu); printf("nnt销售业绩:%s",stuz.money); printf("nnt区域:%s",stuz.area); printf("nnt部门:%s",stuz.specialty); printf("nnt小组:%s",stuz.classid); printf("nnt编号:%s",stuz.stuid); printf("nnt按任意

28、键返回上级菜单."); getch(); if(flag=0) printf("t对不起,你请求显示的销售员信息不存在,请核实后重试!n"); printf("t按任意键继续."); getch(); while(flag=0); return 0;int show_class() /显示整个销售小组人员信息函数 if(j=0) system("cls"); printf("nnnnnnnnnntt 系统无任何可以显示的记录,请先行输入数据!"); printf("nnttt 按任意键返回."); getch(); return 0; char a20; int z; int x; int flag=0; do system(&qu

温馨提示

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

最新文档

评论

0/150

提交评论