📄 manger system.txt
字号:
int changecult()
{
int newcult;
printf("请你输入新的文凭:\n");
printf("1专家 2博士 3硕士 4学士 5其他\n");
scanf("%d",&newcult);
return(newcult);
}
int changesalary()
{
int newsalary;
printf("请你输入新的工资:\n");
scanf("%d",&newsalary);
return(newsalary);
}
int changestate()
{
int newstate;
printf("请你输入现在的身体情况:\n");
printf("1好 2一般 3差\n");
scanf("%d",&newstate);
return(newstate);
}
void add()//追加一个职工信息
{
struct employee emp;
FILE *fp;
int i=0;
if((fp=fopen("employee.txt","ab+"))==NULL)
{
printf("不能够打开这个文件\n");
getch();
return;
}
printf("请你输入新人的内容:\n");
printf("请你输入工号:\n");//输入工号
scanf("%d",&emp.num);
printf("请你输入职位:\n");//输入职位
printf("1董事长 2总经理 3副总经理\n");
printf("4部门经理 5工程师 6秘书\n");
printf("7技术员 8领班 9员工\n");
scanf("%d",&emp.position);
printf("请你输入姓名:\n");//输入姓名
scanf("%s",emp.name);
printf("请你输入性别以(m男f女):\n");//输入性别
scanf("%s",emp.sex);
printf("请你输入文化程度:\n");//输入文化程度
printf("1专家 2博士 3硕士 4学士 5其他\n");
scanf("%d",&emp.cult);
printf("请你输入工资:\n");//输入工资
scanf("%d",&emp.salary);
printf("请你输入身体情况:\n");//身体情况
printf("1好 2一般 3差\n");
scanf("%d",&emp.state);
printf("请你输入工作年月:\n");
scanf("%s",emp.day);
fwrite(&emp,sizeof(struct employee),1,fp);
rewind(fp);
printf("插入完毕,按任意键返回\n");
getch();
total=total+1;
fclose(fp);
return;
}
void del()//删除一个职工信息
{
int i=0;
char delname[8];
FILE *fp;
if((fp=fopen("employee.txt","w"))==NULL)
{
printf("文件为空,不能够打开\n");
printf("按任意键返回\n");
getch();
return;
}
printf("请你输入要删除的人的姓名:\n");//删除的职工的信息
scanf("%s",delname);
for(i=0;i<N;i++)
{
if(strcmp(em[i].name,delname)==0)
{
total--;
for(;i<N;i++)
{
em[i]=em[i+1];
}
}
}
i=0;
fwrite(&em[i],sizeof(struct employee),total,fp);
fclose(fp);
}
void query()
{
FILE *fp;
int i=0;
char quename[8];
if((fp=fopen("employee.txt","r"))==NULL)
{
printf("不能够打开文件,按任意键返回\n");
getch();
return;
}
printf("请你输入要查询的人的姓名\n");
scanf("%s",quename);
for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++)
{
if(strcmp(em[i].name,quename)==0) /*找到,并显示该职工记录*/
{
printf("\t\t\n查询到的职工号或姓名为的信息如下:\n");
printf("以下是你要查询的人的信息\n");
printf("工号: %d\n",em[i].num);
printf("职位: %d\n",em[i].position);
printf("1董事长 2总经理 3副总经理\n");
printf("4部门经理 5工程师 6秘书\n");
printf("7技术员 8领班 9员工\n");
printf("姓名: %s\n",em[i].name);
printf("性别: %s\n",em[i].sex);
printf("其中(m男f女)\n");
printf("文化程度: %d\n",em[i].cult);
printf("1专家 2博士 3硕士 4学士 5其他\n");
printf("工资: %d\n",em[i].salary);
printf("身体情况: %d\n",em[i].state);
printf("1好 2一般 3差\n");
printf("工作年月: %s\n",em[i].day);
printf("\n");
printf("查询完毕,按任意键返回\n");
getch();
fclose(fp);
return;
}
}
printf("没有这样的人,按任意键返回\n");
getch();
fclose(fp);
return;
}
void communicate()
{
int choicecommunicate;
printf("欢迎进入通讯录系统\n");
printf("请你选择操作类型:\n");
printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
printf("1为输入通讯录信息\n");
printf("2为查询通讯录信息\n");
printf("3为修改通讯录信息\n");
printf("0为退出通讯录系统\n");
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
scanf("%d",&choicecommunicate);
switch(choicecommunicate)
{
case 1:inputcommunicate();
break;
case 2:querycommunicate();
break;
case 3:changecommunicate();
break;
case 0:
{
printf("谢谢使用再见\n");
printf("按任意键返回\n");
getch();
return;
}
default:
printf("输入有错\n");
}
}
void inputcommunicate()
{
FILE *fp;
int choiceincom='y';
int i=0;
if((fp=fopen("empcom.txt","w"))==NULL)
{
printf("不能够打开文件\n");
printf("任意键返回\n");
getch();
return;
}
printf("请你输入通讯录的信息:\n");
while(choiceincom=='y'||choiceincom=='Y')
{
p++;
i++;
printf("第%d个职工\n",i);
printf("请你输入姓名:\n");
scanf("%s",empc[i].name);
printf("请你输入生日:\n");
scanf("%s",empc[i].time);
printf("请你输入办公室电话号码:\n");
scanf("%s",empc[i].officetel);
printf("请你输入家庭电话号码:\n");
scanf("%s",empc[i].hometel);
printf("请你输入手机号码:\n");
scanf("%s",empc[i].handtel);
printf("请你输入地址:\n");
scanf("%s",empc[i].address);
printf("是否继续输入?(y/n)\n");
choiceincom=getch();
fwrite(&empc[i],sizeof(struct communication),1,fp);
}
if(toupper(choiceincom)=='N')
{
fclose(fp);
printf("输入完毕,任意键返回\n");
return;
}
}
void querycommunicate()
{
FILE *fp;
int i=0;
char qcname[8];
if((fp=fopen("empcom.txt","r"))==NULL)
{
printf("不能够打开文件,按任意键返回\n");
getch();
return;
}
printf("请你输入要查询的人的姓名:\n");
scanf("%s",qcname);
for(i=0;fread(&empc[i],sizeof(struct communication),1,fp)!=0;i++)
{
if(strcmp(empc[i].name,qcname)==0)
{
printf("以下为您所要求的信息:\n");
printf("姓名: %s\n",empc[i].name);
printf("生日: %s\n",empc[i].time);
printf("办公室电话号码: %s\n",empc[i].officetel);
printf("家庭电话号码: %s\n",empc[i].hometel);
printf("手机号码: %s\n",empc[i].handtel);
printf("家庭地址: %s\n",empc[i].address);
printf("查询完毕,按任意键返回\n");
getch();
fclose(fp);
return;
}
}
printf("没有这样的人,按任意键返回\n");
getch();
fclose(fp);
return;
}
void changecommunicate()
{
FILE *fp;
int i=0;
char chcname[8];
int choicecom;
el b[N];
if((fp=fopen("empcom.txt","w+"))==NULL)
{
printf("打不开文件按任意键返回\n");
getch();
return;
}
printf("请你输入你要修改的人的姓名:\n");
scanf("%s",chcname);
for(i=0;i<p;i++)
{
if(strcmp(empc[i].name,chcname)==0)
{
printf("以下为您所要修改的人的信息:\n");
printf("姓名:%s\n",empc[i].name);
printf("生日: %s\n",empc[i].time);
printf("办公室电话号码: %s\n",empc[i].officetel);
printf("家庭电话号码: %s\n",empc[i].hometel);
printf("手机号码: %s\n",empc[i].handtel);
printf("家庭地址: %s\n",empc[i].address);
printf("请你选择要修改的东西:\n");
printf("$$$$$$$$$$$$$$$$$$$$$$\n");
printf("1修改办公室电话号码\n");
printf("2修改家庭电话号码\n");
printf("3修改手机电话号码\n");
printf("0退出系统\n");
printf("$$$$$$$$$$$$$$$$$$$$$$\n");
scanf("%d",&choicecom);
switch(choicecom)
{
case 1:strcpy(empc[i].officetel,changetel1());
break;
case 2:strcpy(empc[i].hometel,changetel2());
break;
case 3:strcpy(empc[i].handtel,changetel3());
break;
case 0:
return;
default:
printf("输入有错\n");
}
b[i]=empc[i];
}
else
{
b[i]=empc[i];
}
}
for(i=0;i<p;i++)
{
empc[i]=b[i];
}
i=0;
fwrite(&empc[i],sizeof(struct communication),p,fp);
fclose(fp);
printf("操作完成按任意键返回\n");
getch();
return;
}
char *changetel1()
{
char newofficetel[13];
printf("请你输入新办公室电话号码:\n");
scanf("%s",newofficetel);
return(newofficetel);
}
char *changetel2()
{
char newhometel[13];
printf("请你输入新家庭电话号码:\n");
scanf("%s",newhometel);
return(newhometel);
}
char *changetel3()
{
char newhandtel[13];
printf("请你输入新手机电话号码:\n");
scanf("%s",newhandtel);
return(newhandtel);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -