该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
printf("\n\t\t地址: %s",employee[i].adress);
printf("\n\t\t职务: %s",employee[i].duty);
printf("\n\t\t学历:%s",employee[i].education);
printf("\n\t\t━━━━━━━━━━━━━━━━━━━━━━━━");
mark++;
printf("\n\t\t按任意键返回查找菜单:");
getch();
return;
}
}
if (mark==0)
{
printf("\n\t\t没有该学生的信息");
printf("\n\t\t按任意键返回查找菜单");
getch();
return;
}
}
void searchbyname()//按姓名查询
{
int mark=0; //找到的学生计数器
int i;
int a=0;
printf("\n\t\t━━━━━━━━━ 按姓名查找━━━━━━━━━");
char name[20];
printf("\n\t\t请输入姓名:");
scanf("%s",name);
for(i=a;i
{
if (strcmp(employee[i].name,name)==0)
{
printf("\n\t\t━━━━━━以下是您查找的学生信息━━━━━━━━");
printf("\n\t\t编号: %s",employee[i].id);
printf("\n\t\t性别: %s",employee[i].sex);
printf("\n\t\t姓名: %s",employee[i].name);
printf("\n\t\t电话: %s",employee[i].phone);
printf("\n\t\t地址: %s",employee[i].adress);
printf("\n\t\t职务: %s",employee[i].duty);
printf("\n\t\t学历:%s",employee[i].education);
printf("\n\t\t━━━━━━━━━━━━━━━━━━━━━━━━━");
mark++;
if ((i+1)
{
printf("\n\t\t是否继续查找相同名字的学生信息:(y/n)");
if (getch()=='y')
{
a=i;
continue; //继续执行IF函数进行比较
}
else
return;
}
else
{
printf("\n\t\t按任意键返回查找菜单");
getch();
return;
}
}
}
if(mark!=0)
{
printf("\n\t\t没有重名的学生纪录");
printf("\n\t\t按任意键返回查找菜单");
getch();
return;
}
else
{
printf("\n\t\t没有找到该姓名的学生纪录");
printf("\n\t\t按任意键返回查找菜单");
getch();
return;
}
}
void searchbyid()//按编号查询
{
int mark=0; //查找到的学生计数器
int i;
int a=0;
printf("\n\t\t━━━━━━━━━按编号查找━━━━━━━━━━\n");
char id[10];
printf("\n\t\t请输入编号:");
scanf("%s",id);
for(i=0;i
{
if (strcmp(employee[i].id,id)==0)
{
printf("\n\t\t━━━━━━ 以下是您查找的学生信息━━━━━━━");
printf("\n\t\t编号: %s",employee[i].id);
printf("\n\t\t姓名: %s",employee[i].name);
printf("\n\t\t性别: %s",employee[i].sex);
printf("\n\t\t电话: %s",employee[i].phone);
printf("\n\t\t地址: %s",employee[i].adress);
printf("\n\t\t职务: %s",employee[i].duty);
printf("\n\t\t学历: %s",employee[i].education);
printf("\n\t\t━━━━━━━━━━━━━━━━━━━━━━━━━");
printf("\n\t\t按任意键返回查找菜单:");
mark++;
getch();
return;
}
}
if (mark==0)
{
printf("\n\t\t没有该学生的信息");
printf("\n\t\t按任意键返回查找菜单");
getch();
return;
}
}
void writetofile()//写入文件
{
int i;
if ((fp=fopen("employee.txt","w"))==NULL)
{
printf("\n\t\t文件打开失败");
}
for (i=0;i
{
if (fwrite(&employee[i],sizeof(struct record),1,fp)!=1)
{
printf("\n\t\t写入文件错误!\n");
}
}
fclose(fp);
printf("\n\t\t系统文件已保存,");
system("PAUSE");
return;
}
void deleteone()//删除单个
{
deletebyid();
}
void listbyname()//按姓名排序
{
int i,j;
struct record tmp;
for (i=1;i
{
if(strcmp(employee[i].name,employee[i-1].name)<0)
{
tmp=employee[i];
j=i-1;
do
{
employee[j+1]=employee[j];
j--;
}while ((strcmp(tmp.name,employee[j].name)<0&&j>=0));
employee[j+1]=tmp;
}
}
showall();
return;
}
void listbyid()//按编号排序
{
int i,j;
struct record tmp;
for (i=1;i
{
if(strcmp(employee[i].id,employee[i-1].id)<0)
{
tmp=employee[i];
j=i-1;
do
{
employee[j+1]=employee[j];
j--;
}while ((strcmp(tmp.id,employee[j].id)<0)&&j>=0);
employee[j+1]=tmp;
}
}
showall();
return;
}
void listmenu()//排序菜单
{
char choic;
if(num==0)
{
printf("\n\t\t文件中无任何纪录");
printf("\n\t\t按任意键返回主菜单");
getch();
return;
}
system("cls");
printf("\n\t\t┏━━━━━━━━排序菜单━━━━━━━━━┓");
printf("\n\t\t┃ 1-按编号排序 2-按姓名排序 ┃");
printf("\n\t\t┃ 3-返回主菜单 ┃");
printf("\n\t\t┗━━━━━━━━━━━━━━━━━━━━━┛");
printf("\n\t\t请选择:");
choic=getch();
switch(choic)
{
case '1':listbyid();listmenu();
case '2':listbyname();listmenu();
case '3':mainmenu();listmenu();
default:mainmenu();break;
}
}