人事管理系统----C语言设计,希望给你作为参考!
人事管理管理系统
[要求]
某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。
(1)添加删除功能:能根据学院人事的变动情况,添加删除记录;
(2)查询功能:能根据编号和姓名进行查询;
(3)编辑功能(高级):根据查询对相应的记录进行修改,并存储;
(4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息;
(5)排序功能:按照年龄、来院时间进行排序;
保存功能:能对输入的数据进行相应的存储
# include
# include
# include
# define M 2000
# define N 20
void menu();
void retify();
void sear_edit();
void sear_editnum();
void sear_editname();
void tianjia();
void shanchu();
void row();
void stat();
void stat1();
void old_row();
void comingtime_row();
void back();
void browse();
struct worker
{
int num;
char name[20];
char sex[10];
int old;
char zhicheng[20];
char zhiwei[20];
char mianmao[20];
char xueli[20];
int come_time;
int work_time;
int leibie;
}wor[N];
main()
{
menu();
}
void menu()
{
int n,w;
do
{
puts("\t\t***********************高校人事管理*************************\n\n\n");
puts("\t\t\t\t 1.添加或删除\n");
puts("\t\t\t\t 2.查询与编辑\n");
puts("\t\t\t\t 3.统计\n");
puts("\t\t\t\t 4.排序\n");
puts("\t\t\t\t 5.浏览\n");
puts("\t\t\t\t 6.退出\n");
puts("\t\t*************************************************************\n");
printf("选择你要的服务(1-6): [ ]\b\b");
scanf("%d",&n);
if(n<1||n>6)
{
w=1;
getchar();
}
else w=0;
}
while(w==1);
switch(n)
{
case 1:retify();break;
case 2:sear_edit();break;
case 3:stat();break;
case 4:row();break;
case 5:browse();break;
case 6:exit(0);
}
}
void retify()
{
int n,w;
do
{
puts("\t\t***************删除或添加人员的信息****************\n\n\n\n\n");
puts("\t\t\t\t 1.添加");
puts("\t\t\t\t 2.删除");
puts("\t\t\t\t 3.返回主页");
printf("请选择服务(1-3): [ ]\b\b");
scanf("%d",&n);
if(n<1||n>3)
{
w=1;
getchar();
}
else w=0;
}
while(w==1);
switch(n)
{
case 1:tianjia();break;
case 2:shanchu();break;
case 3:menu();break;
}
}
void tianjia()
{
FILE *fp;
int i,number;
struct worker wor_t[N];
printf("您要添加的人的人数:");
scanf("%d",&number);
printf("输入添加人的信息:\n");
for(i=0;i