该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
void menu_delprog(Linklist head)
{ /* 选项菜单执行系统 */
int i;
for(;;)
{
i=menu_delselect();
switch(i)
{
case 1:
if(head==NULL) printf("请先建立链表后再进行操作!");
else {
delnumb(head); /* 删除工号算法 */
}
printf("按任意键继续.........");
getch();
break;
case 2:
if(head==NULL) printf("请先建立链表后再进行操作!");
else {
tail=delname(head,tail); /* 删除书名算法 */
}
printf("按任意键继续.........");
getch();
break;
case 3:
break;
}
if(i==3) break;
}
}
void menu_inprog(Linklist *head)
{ /* 插入选项菜单执行系统 */
int i;
for(;;)
{
i=menu_inselect();
switch(i)
{
case 1:
if(head==NULL) printf("请先建立链表后再进行操作!");
else {
insert(head); /* 插入数据算法 */
}
printf("按任意键继续.........");
getch();
break;
case 2:
if(head==NULL) printf("请先建立链表后再进行操作!");
else {
tail=inserts(head,tail); /* 插入数据算法 */
}
printf("按任意键继续.........");
getch();
break;
case 3:
break;
}
if(i==3) break;
}
}
void menu_findprog(Linklist *head)
{ /* 查找选项菜单执行系统 */
int i;
for(;;)
{
i=menu_findselect();
switch(i)
{
case 1:
if(head==NULL) printf("请先建立链表后再进行操作!");
else { /* 工号查找算法 */
ch='y';
while(ch=='y')
{
p=findnumg(head);
if(p!=NULL)
{
printf("工号\t姓名\t年龄\t性别\t部门\t年\t月\t日\t考勤\t病假\t事假\t其他\n");
printf("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n",p->numgh,p->name,p->age,p->sex,p->bumen,p->year,p->month,p->day,p->kaoqing,p->bingjia,p->shijia ,p->qita);
}
else printf("数据库中无此工号的数据!!!");
printf("\n是否重新查找另一个编号的记录?(y/n): ");
scanf("%c%*c",&ch);
}
}
printf("按任意键继续.........");
getch();
break;
case 2:
if(head==NULL) printf("请先建立链表后再进行操作!");
else { /* 姓名查找算法 */
printlinks(head);
chs='y'; ch='y';
while(chs=='y')
{
printf("请输入要查找记录的姓名: ");
gets(sname);
p=head->next;
while(ch=='y')
{
p=findname(sname,p);
if(p!=NULL)
{
printf("工号\t姓名\t年龄\t性别\t部门\t年\t月\t日\t考勤\t病假\t事假\t其他\n");
printf("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n",p->numgh,p->name,p->age,p->sex,p->bumen,p->year,p->month,p->day,p->kaoqing,p->bingjia,p->shijia ,p->qita);
printf("\n是否继续查找相同姓名的记录?(y/n): ");
scanf("%c%*c",&ch);
if(ch=='y') p=p->next;
}
else {
printf("查找结束或该数据库中无此姓名的记录!!!");
break;
}
}
printf("\n是否重新进行查找操作?(y/n): ");
scanf("%c%*c",&chs);
}