#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
struct ll
{
int science; //科研工作量
int teach; //教学工作量
int complex; //服务工作量
int num1; //论文数
int num2; //项目数
int money; //经费
};
struct person1
{
int id; //编号
char name[20]; //姓名
char sex[20]; //性别
int age; //年龄
char dept[20]; //所在系
char work[20]; //专业
char title[20]; //职称
struct ll lb;
int mm; //审改项目次数
int kk; //成功次数
int ll; //文章数
int res; //工作量
}tc[100];
struct person2
{
int num; //编号
char name[20]; //姓名
char sex[20]; //性别
int age; //年龄
char polices[50]; //政治面貌
char post1[40]; //职称
}bs[100];
int cnt;
int con;
void menu1()
{
printf("*****************************************\n");
printf("$ 高校人员管理系统 $\n");
printf("*****************************************\n");
printf(" 请输入密码: ");
}
void menu2()
{
printf("****欢迎使用高校人员信息管理系统****\n");
printf("====================================\n");
printf("| 1.教师管理 |\n");
printf("| 2.领导管理 |\n");
printf("| 3.退 出 |\n");
printf("====================================\n");
printf(" 请选择[1/2/3]:");
}
void menu3()
{
printf("************教师管理系统************\n");
printf("====================================\n");
printf("| 1.录入信息 |\n");
printf("| 2.查询信息 |\n");
printf("| 3.修改信息 |\n");
printf("| 4.删除信息 |\n");
printf("| 5.信息排序 |\n");
printf("| 6.工作量统计 |\n");
printf("| 7.退 出 |\n");
printf("====================================\n");
printf(" 请选择[1/2/3/4/5/6/7]:");
}
void menu4()
{
printf("************领导管理系统************\n");
printf("====================================\n");
printf("| 1.录入信息 |\n");
printf("| 2.查询信息 |\n");
printf("| 3.修改信息 |\n");
printf("| 4.删除信息 |\n");
printf("| 5.退 出 |\n");
printf("====================================\n");
printf(" 请选择[1/2/3/4/5]:");
}
void menu5()
{
printf("************排 序 方 式************\n");
printf("====================================\n");
printf("| 1.论 文 数 |\n");
printf("| 2.项 目 数 |\n");
printf("| 3.经 费 数 |\n");
printf("====================================\n");
printf(" 请选择[1/2/3]:");
}
void input1()
{
int m,i,c=0;
system("cls");
printf("请输入录入信息的个数:");
scanf("%d",&m);
printf("\n\n");
for(i = 0;i < m;i ++)
{
c++;
printf("请输入编号:");
scanf("%d",&tc[cnt].id);
printf("请输入姓名:");
scanf("%s",tc[cnt].name);
printf("请输入性别:");
scanf("%s",tc[cnt].sex);
printf("请输入年龄:");
scanf("%d",&tc[cnt].age);
printf("请输入所在系:");
scanf("%s",tc[cnt].dept);
printf("请输入专业:");
scanf("%s",tc[cnt].work);
printf("请输入职称:");
scanf("%s",tc[cnt].title);
printf("请输入科研工作量:");
scanf("%d",&tc[cnt].lb.science);
printf("请输入教学工作量:");
scanf("%d",&tc[cnt].lb.teach);
printf("请输入服务工作量:");
scanf("%d",&tc[cnt].lb.complex);
printf("请输入论文数:");
scanf("%d",&tc[cnt].lb.num1);
printf("请输入项目数:");
scanf("%d",&tc[cnt].lb.num2);
printf("请输入经费:");
scanf("%d",&tc[cnt].lb.money);
printf("请输入申请教改项目次数:");
scanf("%d",&tc[i].mm);
printf("请输入申报项目成功次数:");
scanf("%d",&tc[i].kk);
printf("请输入撰写教材次数:");
scanf("%d",&tc[i].ll);
tc[i].res=5*(tc[i].mm+tc[i].kk)+10*tc[i].ll;
cnt ++;
printf("\n\n");
}
if(c==0)
printf("未录入!\n");
else
printf("录入成功!\n");
system("pause");
system("cls");
}
void check1()
{
int x,i;
int flag = 0;
system("cls");
printf("请输入需要查询的职工编号:");
scanf("%d",&x);
printf("\n");
for(i = 0;i < cnt;i ++)
{
if(x == tc[i].id)
{
printf("编号:%d\n",tc[i].id);
printf("姓名:%s\n",tc[i].name);
printf("性别:%s\n",tc[i].sex);
printf("年龄:%d\n",tc[i].age);
printf("所在系:%s\n",tc[i].dept);
printf("专业:%s\n",tc[i].work);
printf("职称:%s\n",tc[i].title);
printf("科研工作量:%d\n",tc[i].lb.science);
printf("教学工作量:%d\n",tc[i].lb.teach);
printf("服务工作量:%d\n",tc[i].lb.complex);
printf("论文数:%d\n",tc[i].lb.num1);
printf("项目数:%d\n",tc[i].lb.num2);
printf("经费:%d\n",tc[i].lb.money);
printf("工作量:%d\n",tc[i].res);
printf("\n\n");
flag = 1;
break;
}
}
if(flag == 0) printf("输入编号错误!\n");
printf("**************************\n\n");
for(i = 0;i < cnt;i ++)
{
printf("编号:%d\n",tc[i].id);
printf("姓名:%s\n",tc[i].name);
printf("性别:%s\n",tc[i].sex);
printf("年龄:%d\n",tc[i].age);
printf("所在系:%s\n",tc[i].dept);
printf("专业:%s\n",tc[i].work);
printf("职称:%s\n",tc[i].title);
printf("科研工作量:%d\n",tc[i].lb.science);
printf("教学工作量:%d\n",tc[i].lb.teach);
printf("服务工作量:%d\n",tc[i].lb.complex);
printf("论文数:%d\n",tc[i].lb.num1);
printf("项目数:%d\n",tc[i].lb.num2);
printf("经费:%d\n",tc[i].lb.money);
printf("工作量:%d\n",tc[i].res);
printf("\n\n");
}
system("pause");
system("cls");
}
void change1()
{
int x,i;
system("cls");
printf("请输入需要修改的职工编号:");
scanf("%d",&x);
printf("\n");
int flag = 0;
for(i = 0;i < cnt;i ++)
{
if(x == tc[i].id)
{
printf("请输入编号:");
scanf("%d",&tc[i].id);
printf("请输入姓名:");
scanf("%s",tc[i].name);
printf("请输入性别:");
scanf("%s",tc[i].sex);
printf("请输入年龄:");
scanf("%d",&tc[i].age);
printf("请输入所在系:");
scanf("%s",tc[i].dept);
printf("请输入专业:");
scanf("%s",tc[i].work);
printf("请输入职称:");
scanf("%s",tc[i].title);
printf("请输入科研工作量:");
scanf("%d",&tc[i].lb.science);
printf("请输入教学工作量:");
scanf("%d",&tc[i].lb.teach);
printf("请输入服务工作量:");
scanf("%d",&tc[i].lb.complex);
printf("请输入论文数:");
scanf("%d",&tc[i].lb.num1);
printf("请输入项目数:");
scanf("%d",&tc[i].lb.num2);
printf("请输入经费:");
scanf("%d",&tc[i].lb.money);
printf("请输入申请教改项目次数:");
scanf("%d",&tc[i].mm);
printf("请输入申报项目成功次数:");
scanf("%d",&tc[i].kk);
printf("请输入撰写教材次数:");
scanf("%d",&tc[i].ll);
tc[i].res=5*(tc[i].mm+tc[i].kk)+10*tc[i].ll;
flag = 1;
break;
}
}
if(flag)
printf("修改成功!\n");
else
printf("输入编号错误!\n");
system("pause");
system("cls");
}
void delet1()
{
int x,i,idx;
system("cls");
printf("请输入需要删除的信息编号:");
scanf("%d",&x);
printf("\n");
int flag = 0;
for(i = 0;i < cnt;i ++)
{
if(x == tc[i].id)
{
idx = i;
flag = 1;
break;
}
}
if(flag)
{
for(i = idx;i < cnt - 1;i ++)
tc[i] = tc[i + 1];
cnt --;
printf("删除成功!\n");
}else
printf("输入编号错误!\n");
system("pause");
system("cls");
}
void sort()
{
int x,i,j;struct person1 t;
system("cls");
menu5();
scanf("%d",&x);
system("cls");
if(x == 1)
{
for(i = 0;i <=cnt - 1;i ++)
{
for(j = 0;j < cnt - 1 - i;j ++)
{
if(tc[j].lb.num1 < tc[j+1].lb.num1)
{
t = tc[j];
tc[j] = tc[j+1];
tc[j+1] = t;
}
}
}
}else if(x == 2)
{
for(i = 0;i < cnt - 1;i ++)
{
for(j = 0;j < cnt - i - 1;j ++)
{
if(tc[j].lb.num2 < tc[j+1].lb.num2)
{
t = tc[j];
tc[j] = tc[j+1];
tc[j+1] = t;
}
}
}
}else
{
for(i = 0;i < cnt - 1;i ++)
{
for(j = 0;j < cnt - i - 1;j ++)
{
if(tc[j].lb.money < tc[j+1].lb.money)
{
t = tc[j];
tc[j] = tc[j+1];
tc[j+1] = t;
}
}
}
}
for(i = 0;i < cnt;i ++)
{
printf("编号:%d\n",tc[i].id);
printf("姓名:%s\n",tc[i].name);
printf("性别:%s\n",tc[i].sex);
printf("年龄:%d\n",tc[i].age);
printf("所在系:%s\n",tc[i].dept);
printf("专业:%s\n",tc[i].work);
printf("职称:%s\n",tc[i].title);
printf("科研工作量:%d\n",tc[i].lb.science);
printf("教学工作量:%d\n",tc[i].lb.teach);
printf("服务工作量:%d\n",tc[i].lb.complex);
printf("论文数:%d\n",tc[i].lb.num1);
printf("项目数:%d\n",tc[i].lb.num2);
printf("经费:%d\n",tc[i].lb.money);
printf("\n\n");
}
system("pause");
system("cls");
}
void add()
{
system("cls");
int t,i,ll=0,kk;
printf("***************工作量统计***************\n");
printf("====================================\n");
printf("| 1.总工作量 |\n");
printf("| 2.工作量查询 |\n");
printf("====================================\n");
printf(" 请选择[1/2]:");
scanf("%d",&t);
system("cls");
switch(t)
{
case 1:
for(i=0;i<cnt;i++)
ll+=tc[i].res;
printf("所有教师总工作量为:%d\n",ll);
break;
case 2:
printf("请输入需要查询的编号:");
scanf("%d",&kk);
for(i = 0;i < cnt;i ++)
{
if(kk==tc[i].id)
{
printf("姓名:%s\n",tc[i].name);
printf("性别:%s\n",tc[i].sex);
printf("年龄:%d\n",tc[i].age);
printf("工作量:%d\n",tc[i].res);
printf("\n");
}
}
break;
}
system("pause");
system("cls");
}
void input2()//领导录入信息
{
system("cls");
printf("请输入录入信息的个数:");
int x,i;
scanf("%d",&x);
for(i=0;i<x;i++)
{
printf("请输入编号:");
scanf("%d",&bs[i].num);
printf("请输入姓名:");
scanf("%s",bs[i].name);
printf("请输入性别:");
scanf("%s",bs[i].sex);
printf("请输入年龄:");
scanf("%d",&bs[i].age);
printf("请输入政治面貌:");
scanf("%s",bs[i].polices);
printf("请输入职称:");
scanf("%s",bs[i].post1);
con++;
printf("\n\n");
}
printf("录入成功!\n");
system("pause");
system("cls");
}
void shuchu(struct person2 t)
{
printf("编号:%d\n",t.num);
printf("姓名:%s\n",t.name);
printf("性别:%s\n",t.sex);
printf("年龄:%d\n",t.age);
printf("政治面貌:%s\n",t.polices);
printf("职称:%s\n",t.post1);
printf("\n");
}
void check2()//领导查询信息
{
system("cls");
printf("*****************************************\n");
int t,i,u=0;
printf("请输入需要查询的领导编号:");
scanf("%d",&t);
for(i=0;i<con;i++)
{
if(bs[i].num==t)
{
shuchu(bs[i]);
u++;
}
}
if(u==0)
{
printf("未找到该编号领导,请确认编号正确!");
}
system("pause");
system("cls");
}
void change2()//修改领导信息函数
{
system("cls");
printf("*****************************************\n");
int x,i,u=0;
printf("请输入需要修改的信息编号:");
scanf("%d",&x);
printf("\n");
for(i=0;i<con;i++)
{
if(bs[i].num==x)
{
printf("请输入编号:");
scanf("%d",&bs[i].num);
printf("请输入姓名:");
scanf("%s",bs[i].name);
printf("请输入性别:");
scanf("%s",bs[i].sex);
printf("请输入年龄:");
scanf("%d",&bs[i].age);
printf("请输入政治面貌:");
scanf("%s",bs[i].polices);
printf("请输入职称:");
scanf("%s",bs[i].post1);
u++;
break;}
}
if(u==0)
printf("未找到该编号领导,请确认编号正确!");
printf("*****************************************\n");
system("pause");
system("cls");
}
void delet2()//删除信息函数
{
int x,idx,i;int bk = 0,m;
system("cls");
printf("*****************************************\n");
printf("请输入需要删除的信息编号:");
scanf("%d",&x);
printf("\n");
for(i = 0;i < con;i ++)
{
if(bs[i].num == x)
{
for(i;i<con-1;i++)
bs[i]=bs[i+1];
bk++;
break;
}
}
if(bk!=0)
{
con --;
printf("删除成功!\n");}
else
printf("输入编号有误!\n");
system("pause");
system("cls");/*清屏*/
}
int main()
{
char s[100];
char ch[100] = "123123";
while(1)
{
menu1();
scanf("%s",s);
if(strcmp(s,ch) == 0)
{
system("cls");
menu2();
break;
}
else
{
printf("密码错误,请重新输入!\n");
system("pause");
system("cls");
}
}
int x,y;
scanf("%d",&x);
con=0;
if(x == 1)
{
system("cls");
while(1)
{
menu3();
scanf("%d",&y);
switch(y)
{
case 1:
input1();
break;
case 2:
check1();
break;
case 3:
change1();
break;
case 4:
delet1();
break;
case 5:
sort();
break;
case 6:
add();
break;
case 7:
break;
}
if(y == 7) break;
}
}else if(x == 2)
{
system("cls");
while(1)
{
menu4();
scanf("%d",&y);
switch(y)
{
case 1:
input2();
break;
case 2:
check2();
break;
case 3:
change2();
break;
case 4:
delet2();
break;
case 5:
break;
}
if(y == 5) break;
}
}else
return 0;
}