C语言程序设计招聘信息管理系统Word文档格式.docx
- 文档编号:19879842
- 上传时间:2023-01-11
- 格式:DOCX
- 页数:16
- 大小:36.24KB
C语言程序设计招聘信息管理系统Word文档格式.docx
《C语言程序设计招聘信息管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计招聘信息管理系统Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
♦用人单位信息当用人单位预备招聘人手是,将自动弹出招聘者信息。
(2)统计信息统计出全部的工作信息和提供工作的信息。
给予全部的人来参考提供。
4、模块的程序设计分析
(1).主菜单及头文件设计:
我们按照老师所给的示例我们首先编译了一个头文件,在头文件里,编译了主函数需要用到的一些函数,如#include"
stdio.h"
等,因为需要录入便条的所有信息,所有用一个数据结构来实现信息的储存方式,用数组方式,把每条信息都编译成一个数组,如销售员代号用name[4]记录。
头文件还包括了定义常数记录数typedefstruct,主函数原型
intmenu_select();
/*声明函数*/
intenter(RECODEt[]);
voidsalor(RECODEt[],intn);
intsum(RECODEt[],intn,intm);
voidlist1(RECODEt[],intn);
voidlist2(RECODEt[],intn);
voidlist3(RECODEt[],intn);
voidsave(RECODEt[],intn);
intload(RECODEt[]);
这些的都是主函数需要用到的数据,因此放入头文件当中,在主程序开始之前直接引用
#include"
pro.h"
。
(2).输入信息:
根据要求,招聘信息以文本文件存放在文件中,故需要提供文件的输入、输出等操作;
还需要保存记录以进行修改,删除,查找等操作;
另外还应提供键盘式选择菜单实现功能选择。
如下为程序设计流程图
5、模块的程序源代码
头文件:
#include<
stdio.h>
#include<
stdlib.h>
/*对于学历和工作要求都是用数字来替代*/typedefstructworker
{
intnum;
//编号
charid[20];
//身份证号,过长,所以所以用字符串
charname[15];
//姓名
intdegree;
//学历
intjob;
//需要的工作worker*next;
worker*pre;
}worker,*Lworker;
/*需求记录*/
typedefstructwant
intn;
//单位的编号
//需求的岗位
//需求的人数
want*next;
want*pre;
}want,*Lwant;
/*输出说明信息的函数*/
voidinfo()
printf("
输入说明如下:
\n"
);
学历说明:
\n1:
高中毕业2:
大学毕业3:
研究生4:
更高学历\n"
职位说明如下:
程序员2:
管理人员3:
会计4:
兽医\n"
当输入求职者信息的时候,求职者编号为-1时,输入结束\n"
当输入供职单位信息的时候,当供职的数量为-1的时候,输入结束\n"
}
/*输入人才信息*/
voidinput_worker(Lworkerhead)
inti=1;
Lworkerx=head;
x->
pre=NULL;
while
(1)
输入第%d个求职者的信息,顺序为编号,姓名,身份证号,需要的工作,学
历\n"
i);
scanf("
%d"
&
num);
if(x->
num==-1)
break;
getchar();
//回车会被读入到gets()函数中,所以必须有一个getchar()把回车收回
gets(x->
name);
id);
job);
degree);
Lworkery=(worker*)malloc(sizeof(worker));
next=y;
y->
pre=x;
x=y;
i++;
}
pre->
next=NULL;
free(x);
/*输入求职信息*/
voidinput_want(Lwanthead)
Lwantx=head;
while
(1)
printf(”第%d个供职单位的信息,顺序为编号,工作,数量\n”,i);
n);
scanf("
Lwanty=(want*)malloc(sizeof(want));
x->
free(x);
/*查询人才信息函数*/
//参数num就是员工的编号,查询是是什么工作
intfind_worker(Lworkerhead,intnum)
for(;
;
x=x->
next)
{if(x->
num==num)
{return(x->
}return(-1);
//表示没有这个人
/*查询工作信息函数*/
//num就是编号
intfind_want(Lwanthead,intnum)
n==num)
return(x->
return(-1);
//表示没有这个单位的信息
/*修改求职者的信息*/
//参数num就是员工的编号
voidchange_worker(Lworkerhead,intnum)
intm=0;
输入要修改的内容:
\n1:
工作2:
学历3:
身份证号4:
姓名\n"
&
d"
m);
switch(m)
case1:
输入更正后的工作\n"
case2:
输入更正后的学历\n"
case3:
输入更正后的身份证号\n"
case4:
输入更正后的姓名\n"
/*更改用人单位信息*/
voidchange_want(Lwanthead,intnum)
n==num)break;
输入要修改的内容\n1:
人数"
switch(n)
输入新的工作\n"
输入新的人数\n"
/*删除求职者信息*/
Lworkerdel_worker(Lworkerhead,intnum)
if(head->
x=head->
next;
free(head);
return(x);
else
{for(;
{break;
Lworkery=x->
pre;
Lworkerz=x->
if(z==NULL)
{y->
next=z;
z->
pre=y;
}return(head);
/*删除用人单位信息*/
Lwantdel_want(Lwanthead,intnum){
if(head->
free(head);
}else
Lwanty=x->
Lwantz=x->
return(head);
/*统计需求量最大的工作*/
voidtongji_need(Lworkerhead,int*n){
inti,m=0;
for(i=1;
i<
5;
i++)n[i]=0;
for(;
x!
=NULL;
{switch(x->
job)
n[1]++;
break;
n[2]++;
case3:
n[3]++;
case4:
n[4]++;
/*统计供给量最大的工作*/
voidtongji_serve(Lwanthead,int*m){inti;
for(i=1;
i++)m[i]=0;
switch(x->
m[1]=m[1]+x->
num;
m[2]=m[2]+x->
m[3]=m[3]+x->
m[4]=m[4]+x->
voidmain()
inti;
intx,num;
info();
intn[5],m[5];
Lworkerhead1=(worker*)malloc(sizeof(worker));
Lwanthead2=(want*)malloc(sizeof(want));
输入要进行的操作\n"
1:
输入求值人员信息2:
输入用人单位信息3:
删除求值人员信息4:
删除用人单位信息5:
修改求职人员信息6:
修改用人单位信息\n"
7:
查询某个求职人员信息8:
查询某个用人单位信息9:
统计需求的工作信息10:
统计提供工作的信息0:
退出\n"
注意:
1和2如果重复执行的话,会覆盖以前的而结果,所以不可以重复选择,
只可以做一次\n"
x);
if(x==0)
switch(x)
input_worker(head1);
input_want(head2);
输入要删除的人员的编号scanf("
head1=del_worker(head1,num);
输入要删除的单位的编号scanf("
head2=del_want(head2,num);
case5:
输入要修改的人员的编号scanf("
change_worker(head1,num);
case6:
输入要修改的单位的编号scanf("
change_want(head2,num);
case7:
输入要查询的人员的编号scanf("
find_worker(head1,num);
case8:
输入要查询的单位的编号scanf("
find_want(head2,num);
case9:
tongji_need(head1,n);
i++)
printf(”第%d种工作的需求量是
case10:
tongji_serve(head2,m);
第%d种工作的提供量是
%d\n"
i,n[i]);
i,m[i]);
6、程序运行结果及系统使用说明
1、进入主菜单:
杳询
D;
U)cbug\Cpp2xve
i入凰人里僂借基
?
改用人单柿信息
«
:
右询某个用人单位信息
孕底说明:
左高链业2职位说取如疋丄;
程序贝2弯藍入李菲当轻入优肝输
舟入结束
时候,输入结束
删涂求值人员營息牡删除用人单位信息
统计需求的工作信息丄靳统计桿
大学毕业扎研究■生北史高学厉
KW*自襄信息的时魅:
縮
iwJPWW息0:
退岀
性意;
1和或喋車复机行的话.令覆盖以前的而结杲,所以不可以重复选择,只可以做一次
2、选择“T,输入供值单位:
改
第1个供职单位的信息
榮東输入结束
呃苧为编号,工作,数量
貌计需求的工乍信息丄謨统计帕
.鑼■?
用人里便信息
咅恳3:
删除求值人负宿息4;
捌隐用人单位倍匏言息
選人员箕■会垃4辜■医荷息町吋底录职聶片为T时,.位信息的时候.当洪职曲教量为7換乍
L;
费入整直人£
信息2
「:
惨改隶职人贯信盒b
“查询某卜求职人员信
}主意:
丄和2如果重复执齐的话,会耄盖以前的而结杲,所以不可以重复选择,只可以做一次
品位说冒号下
输入7,可以查询人员编号:
3、选择“8”,保存到文件:
4、选择“8”,读取文件:
c、T:
UJocufinicntsandSet11r>
gsV_enovoW«
bugw.exe'
昂中毕业容吠竽毕业旅研兖生曲更高学历壷说刼下:
-
|殳录职
序貝◎竜理5兀台廿・,驛患碣叶侯.坯駆;
弋■一「单位信息此时候,邹猷圣值人员信筈匕修邂职人麦信息■:
工作霸信息«
;
iMi_込°
二
意:
1和蛊如果重复识行的话,会18吾以前的耐结果,所以不可以重J!
选择.只可以JS-
土曲医
薯冷号为T时+输人结率供职药譏量为品时侯,输入结吏
捡歆蠶籃3'
删除求值人员触-瞬用人靶吐IT嵐瓠蜀某个用人息趴銃计需求的工恒1S息to:
缆计一
汀、尊肓何的单俭叭闻日
7、结束语及心得体会
通过为期一周的课程设计,我们对〈〈c语言》这门课程有了更深一步的了解。
它是计_
算机程序设计的重要理论技术基础,在我们信息与计算科学专业的学习中占据着十分重要的
地位。
同时也使我们知道,要学好这门课—仅学习书本上的知识是不够的,还要有较强的实践能力。
因为我们学习知识就是为了实践。
而只有多实践,多编写程序,才能更好的理解
与掌握书本上的东西。
运用《C语言》中的算法思想作数据结构,结合C语言基本知识,编写一个通讯录管理系统。
通过完成本课题,进一步熟悉C语言的基本知识,并掌握数据结构的一些基本算法思想,掌
握C语言的文件操作(包括从磁盘读入和向磁盘写入内容),进一步熟悉指针的用法,数组
的建立运用和函数的调用等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 招聘 信息管理 系统