收藏 分享(赏)

C语言程序设计招聘信息管理系统.doc

上传人:精品资料 文档编号:10784639 上传时间:2020-01-09 格式:DOC 页数:16 大小:435.45KB
下载 相关 举报
C语言程序设计招聘信息管理系统.doc_第1页
第1页 / 共16页
C语言程序设计招聘信息管理系统.doc_第2页
第2页 / 共16页
C语言程序设计招聘信息管理系统.doc_第3页
第3页 / 共16页
C语言程序设计招聘信息管理系统.doc_第4页
第4页 / 共16页
C语言程序设计招聘信息管理系统.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、目 录一、 概要设计内容-2二、 总体设计分析-2三、 各模块实现方法-3四、 模块的程序设计分析-3五、 模块的程序的源代码-4六、 程序运行结果及系统使用说明-13七、 结束语及心得体会-1511、概要设计内容题目:招聘信息管理系统设计“招聘信息管理系统” ,使其可以查找对应的工作与对应的资料的功能。 1)数据包括:学历说明,职位说明,求职个人信息,用人单位信息。2)可以对求职人员的信息进行记录。3)可以对用人单位的信息进行记录。4)可以增加或删除记录。 5)可以显示所有保存的记录。 6)可以按个人需要进行查询。2、总体设计分析数据结构图如下:招聘信息管理系统菜单函数清单输入保存文件读取文

2、件显示清单学历说明职位说明求职个人信息用人单位信息23、各模块实现方法(1)能够查询招聘信息系统的程序,以帮助完成招聘查找情况。求职人员信息当查询用人单位招聘用人信息时,将自动告诉单位用人情况。用人单位信息当用人单位预备招聘人手是,将自动弹出招聘者信息。(2)统计信息统计出全部的工作信息和提供工作的信息。给予全部的人来参考提供。4、模块的程序设计分析(1).主菜单及头文件设计:我们按照老师所给的示例我们首先编译了一个头文件,在头文件里,编译了主函数需要用到的一些函数,如#include “stdio.h“等,因为需要录入便条的所有信息,所有用一个数据结构来实现信息的储存方式,用数组方式,把每条

3、信息都编译成一个数组,如销售员代号用 name4记录。头文件还包括了定义常数记录数 typedef struct,主函数原型int menu_select();/*声明函数*/ int enter(RECODE t);/*声明函数*/ void salor(RECODE t,int n);/*声明函数*/ int sum(RECODE t,int n,int m);/*声明函数*/ void list1(RECODE t,int n);/*声明函数*/ void list2(RECODE t,int n);/*声明函数*/ void list3(RECODE t,int n);/*声明函数*/

4、 void save(RECODE t,int n);/*声明函数*/ int load(RECODE t);/*声明函数*/这些的都是主函数需要用到的数据,因此放入头文件当中,在主程序开始之前直接引用#include “pro.h“。(2).输入信息:根据要求,招聘信息以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。如下为程序设计流程图:3输入记录读取文件保存到文件求职人员信息用人单位信息统计需求工作信息统计提供工作信息单退出管理5、模块的程序源代码头文件:#include #include /*对

5、于学历和工作要求都是用数字来替代*/ typedef struct worker int num; /编号 char id20; /身份证号,过长,所以所以用字符串 char name15; /姓名 int degree; /学历 int job; /需要的工作 worker *next; 4worker *pre; worker,*Lworker; /*需求记录*/ typedef struct want int n; /单位的编号 int job; /需求的岗位 int num; /需求的人数 want *next; want *pre; want,*Lwant; /*输出说明信息的函数*

6、/ void info() printf(“输入说明如下 :n“); printf(“学历说明 :n1:高中毕业 2:大学毕业 3:研究生 4:更高学历n“); printf(“职位说明如下 :n1:程序员 2:管理人员 3:会计 4:兽医n“); printf(“当输入求职者信息的时候,求职者编号为-1 时,输入结束n“); printf(“当输入供职单位信息的时候,当供职的数量为-1 的时候,输入结束n“); /*输入人才信息*/ void input_worker(Lworker head) int i=1; Lworker x=head; x-pre=NULL; while(1) pr

7、intf(“输入第 %d 个求职者的信息 ,顺序为编号,姓名,身份证号,需要的工作,学历n“,i); scanf(“%d“, if(x-num=-1) break; getchar();/回车会被读入到 gets()函数中,所以必须有一个 getchar()把回车收回 gets(x-name); gets(x-id); scanf(“%d“, scanf(“%d“, Lworker y=(worker *)malloc(sizeof(worker); x-next=y; y-pre=x; x=y; i+; 5 x-pre-next=NULL; free(x); /*输入求职信息*/ void

8、input_want(Lwant head) Lwant x=head; int i=1; x-pre=NULL; while(1) printf(“第%d 个供职单位的信息,顺序为编号,工作,数量n“,i); scanf(“%d“, scanf(“%d“, scanf(“%d“, if(x-num=-1) break; i+; Lwant y=(want*)malloc(sizeof(want); x-next=y; y-pre=x; x=y; x-pre-next=NULL; free(x); /*查询人才信息函数*/ /参数 num 就是员工的编号,查询是是什么工作 int find_w

9、orker(Lworker head,int num) Lworker x=head; for(;x=x-next) if(x-num=num) return(x-job); return(-1); /表示没有这个人 /*查询工作信息函数*/ /num 就是编号 int find_want(Lwant head,int num) 6 Lwant x=head; for(;x=x-next) if(x-n=num) return(x-job); return(-1); /表示没有这个单位的信息 /*修改求职者的信息*/ /参数 num 就是员工的编号 void change_worker(Lwo

10、rker head,int num) int m=0; Lworker x=head; for(;x=x-next) if(x-num=num) break; printf(“输入要修改的内容:n1:工作 2:学历 3:身份证号 4:姓名n“); scanf(“ switch(m) case 1: printf(“输入更正后的工作n“); scanf(“%d“, break; case 2: printf(“输入更正后的学历n“); scanf(“%d“, break; case 3: printf(“输入更正后的身份证号n“); gets(x-id); break; case 4: prin

11、tf(“输入更正后的姓名n“); gets(x-name); break; 7/*更改用人单位信息*/ /num 就是编号 void change_want(Lwant head,int num) int n; Lwant x=head; for(;x=x-next) if(x-n=num) break; printf(“输入要修改的内容n1:工作 2:人数“); scanf(“%d“, switch(n) case 1: printf(“输入新的工作 n“); scanf(“%d“, break; case 2: printf(“输入新的人数 n“); scanf(“%d“, break;

12、/*删除求职者信息*/ Lworker del_worker(Lworker head,int num) Lworker x=head; if(head-num=num) x=head-next; x-pre=NULL; free(head); return(x); else for(;x=x-next) if(x-num=num) break; 8 Lworker y=x-pre; Lworker z=x-next; if(z=NULL) y-next=NULL; free(x); else y-next=z; z-pre=y; free(x); return(head); /*删除用人单位

13、信息*/ Lwant del_want(Lwant head,int num) Lwant x=head; if(head-n=num) x=x-next; x-pre=NULL; free(head); return(x); else for(;x=x-next) if(x-n=num) break; Lwant y=x-pre; Lwant z=x-next; if(z=NULL) y-next=NULL; free(x); return(head); 9 else y-next=z; z-pre=y; free(x); return(head); /*统计需求量最大的工作*/ void

14、tongji_need(Lworker head,int *n) int i,m=0; for(i=1;inext) switch(x-job) case 1: n1+; break; case 2: n2+; break; case 3: n3+; break; case 4: n4+; break; /*统计供给量最大的工作*/ void tongji_serve(Lwant head,int *m) int i; for(i=1;inext) 10 switch(x-job) case 1: m1=m1+x-num; break; case 2: m2=m2+x-num; break;

15、case 3: m3=m3+x-num; break; case 4: m4=m4+x-num; break; void main() int i; int x,num; info(); int n5,m5; Lworker head1=(worker *)malloc(sizeof(worker); Lwant head2=(want *)malloc(sizeof(want); while(1) printf(“输入要进行的操作n“); printf(“1:输入求值人员信息 2:输入用人单位信息 3:删除求值人员信息 4:删除用人单位信息 5:修改求职人员信息 6:修改用人单位信息n“);

16、 printf(“7:查询某个求职人员信息 8:查询某个用人单位信息 9:统计需求的工作信息 10:统计提供工作的信息 0:退出n“); printf(“注意: 1和2如果重复执行的话,会覆盖以前的而结果,所以不可以重复选择,只可以做一次n“); scanf(“%d“, if(x=0) break; switch(x) case 1: input_worker(head1); break; case 2: 11input_want(head2); break; case 3: printf(“输入要删除的人员的编号n“); scanf(“%d“, head1=del_worker(head1,

17、num); break; case 4: printf(“输入要删除的单位的编号n“); scanf(“%d“, head2=del_want(head2,num); break; case 5: printf(“输入要修改的人员的编号n“); scanf(“%d“, change_worker(head1,num); break; case 6: printf(“输入要修改的单位的编号n“); scanf(“%d“, change_want(head2,num); break; case 7: printf(“输入要查询的人员的编号n“); scanf(“%d“, find_worker(h

18、ead1,num); break; case 8: printf(“输入要查询的单位的编号n“); scanf(“%d“, find_want(head2,num); break; case 9: tongji_need(head1,n); for(i=1;i5;i+) printf(“第%d 种工作的需求量是 %dn“,i,ni); break; case 10: tongji_serve(head2,m); for(i=1;i5;i+) printf(“第%d 种工作的提供量是 %dn“,i,mi); 12 break; 6、程序运行结果及系统使用说明 1、进入主菜单:2、选择“1” ,输

19、入供值单位:13输入 7,可以查询人员编号:3、 选择“8” ,保存到文件:144、选择“8” ,读取文件:157、结束语及心得体会通过为期一周的课程设计,我们对C 语言这门课程有了更深一步的了解。它是计算机程序设计的重要理论技术基础,在我们信息与计算科学专业的学习中占据着十分重要的地位。同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。因为我们学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。运用C 语言中的算法思想作数据结构,结合 C 语言基本知识,编写一个通讯录管理系统。通过完成本课题,进一步熟悉 C 语言的基本知识,并掌握数据结构的一些基本算法思想,掌握 C 语言的文件操作(包括从磁盘读入和向磁盘写入内容) ,进一步熟悉指针的用法,数组的建立运用和函数的调用等

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报