ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:321.41KB ,
资源ID:14191192      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14191192.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言程序设计招聘信息管理系统.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

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

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

2、清单输入保存文件读取文件显示清单学历说明职位说明求职个人信息用人单位信息3、各模块实现方法(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)、输入信息:根据要求,招聘信息以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。如下为程序设计流程图:输入记录读取文件保存到文件 求职人员信息 用人单位信息统计需求工作信息统计提供工作信息单退出管理5、模块的程序源代码头文件:#include #i

5、nclude /*对于学历与工作要求都就是用数字来替代*/ typedef struct worker int num; /编号 char id20; /身份证号,过长,所以所以用字符串 char name15; /姓名 int degree; /学历 int job; /需要的工作 worker *next; worker *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) printf(

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

8、/ void input_want(Lwant head) Lwant x=head; int i=1; x-pre=NULL; while(1) printf(第%d个供职单位的信息,顺序为编号,工作,数量n,i); scanf(%d,&x-n); scanf(%d,&x-job); scanf(%d,&x-num); 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就就是员工的编号,

9、查询就是就是什么工作 int find_worker(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) Lwant x=head; for(;x=x-next) if(x-n=num) return(x-job); return(-1); /表示没有这个单位的信息 /*修改求职者的信息*/ /参数num就就是员工的编号 void

10、 change_worker(Lworker 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(&d,&m); switch(m) case 1: printf(输入更正后的工作n); scanf(%d,&x-job); break; case 2: printf(输入更正后的学历n); scanf(%d,&x-degree); break; case 3: printf(输入更正后的身份证号n);

11、gets(x-id); break; case 4: printf(输入更正后的姓名n); gets(x-name); break; /*更改用人单位信息*/ /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,&n); switch(n) case 1: printf(输入新的工作n); scanf(%d,&x-job); break; case 2: printf(输

12、入新的人数n); scanf(%d,&x-num); break; /*删除求职者信息*/ 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; Lworker y=x-pre; Lworker z=x-next; if(z=NULL) y-next=NULL; free(x); else y-next=z; z-pre=y;

13、 free(x); return(head); /*删除用人单位信息*/ 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); else y-next=z; z-pre=y; free(x); retu

14、rn(head); /*统计需求量最大的工作*/ void 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) switch(x-job) case 1: m1=m1+x-num; break; c

15、ase 2: m2=m2+x-num; break; 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

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

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

18、canf(%d,&num); find_worker(head1,num); break; case 8: printf(输入要查询的单位的编号n); scanf(%d,&num); 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); break; 6、程序运行结果及系统使用

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

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2