|
|
|
|
#include "stdio.h"
|
|
|
|
|
#include "stdlib.h"
|
|
|
|
|
#include "string.h"
|
|
|
|
|
struct shebei
|
|
|
|
|
{
|
|
|
|
|
char ID[10];
|
|
|
|
|
char name[15];
|
|
|
|
|
char kind[15];
|
|
|
|
|
char over[15];
|
|
|
|
|
char yesno[10];
|
|
|
|
|
char time[10];
|
|
|
|
|
char price[10];
|
|
|
|
|
};
|
|
|
|
|
typedef struct node
|
|
|
|
|
{
|
|
|
|
|
struct shebei data;
|
|
|
|
|
struct node *next; //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
}Node;
|
|
|
|
|
void Add(Node *machine) //<2F><><EFBFBD>Ӽ<EFBFBD>¼
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
Node *p,*r,*s;
|
|
|
|
|
char id[10]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID,Ҳ<><D2B2><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>
|
|
|
|
|
r=machine;
|
|
|
|
|
s=machine->next; //ʹsΪ<73><CEAA>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>õĽ<C3B5><C4BD><EFBFBD>
|
|
|
|
|
while(r->next!=NULL) //<2F><><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹrΪ<72><CEAA><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>õĽ<C3B5><C4BD><EFBFBD>
|
|
|
|
|
r=r->next; //<2F><>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĩβ
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD><EFBFBD>ʾ:<3A><><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><F2B7B5BB><EFBFBD><EFBFBD>˵<EFBFBD>!\n");
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ID<EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",id);
|
|
|
|
|
if(strcmp(id,"0")==0) break;
|
|
|
|
|
p=(Node *)malloc(sizeof(Node)); //<2F><><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>
|
|
|
|
|
strcpy(p->data.ID,id);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",p->data.name);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",p->data.kind);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>Ƿ<EFBFBD>:");
|
|
|
|
|
scanf("%s",&p->data.yesno);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뱨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",&p->data.over);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",&p->data.time);
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>۸<EFBFBD>:");
|
|
|
|
|
scanf("%s",&p->data.price);
|
|
|
|
|
printf("<EFBFBD><EFBFBD>ʾ:<3A>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD>\n");
|
|
|
|
|
p->next=NULL;
|
|
|
|
|
r->next=p; //<2F><>һ<EFBFBD><D2BB><EFBFBD>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD><EFBFBD>,<2C><>p<EFBFBD><70><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
r=p; //Ҳ<>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD><EFBFBD>.<2E><>r <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
void Modify(Node *machine)//<2F><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
Node *p;
|
|
|
|
|
char find[20];
|
|
|
|
|
if(!machine->next)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD>ʾ:û<><C3BB><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>ĵ<EFBFBD><EFBFBD>豸ID<EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",find);
|
|
|
|
|
p=machine->next;
|
|
|
|
|
while(p!=NULL)
|
|
|
|
|
{
|
|
|
|
|
if(strcmp(p->data.ID,find)==0) //<2F><><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ص<EFBFBD><D8B5>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA>
|
|
|
|
|
break;
|
|
|
|
|
p=p->next;
|
|
|
|
|
}
|
|
|
|
|
if(p) //<2F><><EFBFBD>ҵ<EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
int x;
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%d",&x);
|
|
|
|
|
if(x==0)
|
|
|
|
|
{break;}
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.ID);
|
|
|
|
|
scanf("%s",p->data.ID);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.name);
|
|
|
|
|
scanf("%s",p->data.name);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.kind);
|
|
|
|
|
scanf("%s",p->data.kind);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>Ƿ<EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.yesno);
|
|
|
|
|
scanf("%s",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.over);
|
|
|
|
|
scanf("%s",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.time);
|
|
|
|
|
scanf("%s",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>۸<EFBFBD>(ԭ<><D4AD><EFBFBD><EFBFBD> %s ):",p->data.price);
|
|
|
|
|
scanf("%s",p->data.price);
|
|
|
|
|
printf("\n>>>>>>>>>><3E><>ʾ:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE>ɹ<EFBFBD><C9B9><EFBFBD>!\n");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else printf("\n<EFBFBD><EFBFBD>ʾ:<3A><>Ҫ<EFBFBD>ĵ<DEB8><C4B5><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
}
|
|
|
|
|
void Disp(Node *machine)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
Node *p;
|
|
|
|
|
p=machine->next;
|
|
|
|
|
if(!p)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD>ʾ:û<>м<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ!\n");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
printf("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
|
|
|
|
|
while(p)
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD>%s\n",p->data.ID);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.name);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.kind);
|
|
|
|
|
printf("<EFBFBD>Ƿ<EFBFBD>%s\n",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD>%s\n",p->data.price);
|
|
|
|
|
p=p->next;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
void Tongji(Node *machine)//ͳ<><CDB3>
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
Node *p;
|
|
|
|
|
int sel;int flag2=0,ha=0;
|
|
|
|
|
p=machine->next;
|
|
|
|
|
char find[20];
|
|
|
|
|
if(!machine->next) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD>ʾ:û<><C3BB><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD>ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>!\n");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
printf(">>>>>>>>>><3E><>ʾ:\n=====>0<>˳<EFBFBD>\n=====>1<><31><EFBFBD>豸<EFBFBD><E8B1B8>ͳ<EFBFBD><CDB3>\n=====>2<><32><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>\n");
|
|
|
|
|
scanf("%d",&sel);
|
|
|
|
|
if(sel==1)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",find);
|
|
|
|
|
while(p)
|
|
|
|
|
{
|
|
|
|
|
if(strcmp(p->data.ID,find)==0)
|
|
|
|
|
{
|
|
|
|
|
flag2++;
|
|
|
|
|
}
|
|
|
|
|
if(flag2==1&&ha!=flag2)
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD>%s\n",p->data.ID);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.name);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.kind);
|
|
|
|
|
printf("<EFBFBD>Ƿ<EFBFBD>%s\n",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD>%s\n",p->data.price);
|
|
|
|
|
ha=flag2;
|
|
|
|
|
}
|
|
|
|
|
else if(flag2>ha){printf("<EFBFBD>豸<EFBFBD><EFBFBD>%s\n",p->data.ID);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.name);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.kind);
|
|
|
|
|
printf("<EFBFBD>Ƿ<EFBFBD>%s\n",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD>%s\n",p->data.price);
|
|
|
|
|
ha=flag2;}
|
|
|
|
|
p=p->next;
|
|
|
|
|
}
|
|
|
|
|
if(flag2)
|
|
|
|
|
{
|
|
|
|
|
printf("\n*************************<2A><><EFBFBD>豸<EFBFBD><E8B1B8>%sͳ<73>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d<><64><EFBFBD><EFBFBD>¼:*************************\n\n",find,flag2);
|
|
|
|
|
}
|
|
|
|
|
else {printf("\n<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>%sͳ<73>ƵĽ<C6B5><C4BD><EFBFBD>Ϊ0<CEAA><30>\n\n",find);}
|
|
|
|
|
}
|
|
|
|
|
else if(sel==2)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:");
|
|
|
|
|
scanf("%s",find);
|
|
|
|
|
while(p)
|
|
|
|
|
{
|
|
|
|
|
if(strcmp(p->data.name,find)==0)
|
|
|
|
|
{
|
|
|
|
|
flag2++;
|
|
|
|
|
}
|
|
|
|
|
if(flag2==1&&ha!=flag2)
|
|
|
|
|
{ printf("<EFBFBD>豸<EFBFBD><EFBFBD>%s\n",p->data.ID);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.name);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.kind);
|
|
|
|
|
printf("<EFBFBD>Ƿ<EFBFBD>%s\n",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD>%s\n",p->data.price);
|
|
|
|
|
ha=flag2;
|
|
|
|
|
}
|
|
|
|
|
else if(flag2>ha){printf("<EFBFBD>豸<EFBFBD><EFBFBD>%s\n",p->data.ID);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.name);
|
|
|
|
|
printf("<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.kind);
|
|
|
|
|
printf("<EFBFBD>Ƿ<EFBFBD>%s\n",p->data.yesno);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n",p->data.over);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n",p->data.time);
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD>%s\n",p->data.price);
|
|
|
|
|
ha=flag2;}
|
|
|
|
|
p=p->next;
|
|
|
|
|
}
|
|
|
|
|
if(flag2)
|
|
|
|
|
{
|
|
|
|
|
printf("\n******************<2A><><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>%sͳ<73>Ƶ<EFBFBD><C6B5><EFBFBD>%d<><64><EFBFBD><EFBFBD>¼:********************\n\n",find,flag2);
|
|
|
|
|
}
|
|
|
|
|
else {printf("\n<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>%sͳ<73>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>Ϊ0<CEAA><30>\n\n",find);}
|
|
|
|
|
}
|
|
|
|
|
else if(sel==0) return;
|
|
|
|
|
}
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
Node *machine;
|
|
|
|
|
FILE *fp;
|
|
|
|
|
int flag;
|
|
|
|
|
Node *p,*q;
|
|
|
|
|
printf("\n<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ\n");
|
|
|
|
|
machine=(Node*)malloc(sizeof(Node));
|
|
|
|
|
machine->next=NULL;
|
|
|
|
|
p=machine;
|
|
|
|
|
fp=fopen("D:\\<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ.txt","ab+");
|
|
|
|
|
q=(Node*)malloc(sizeof(Node));
|
|
|
|
|
if(fread(q,sizeof(Node),1,fp)) //<2F><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
q->next=NULL;
|
|
|
|
|
p->next=q;
|
|
|
|
|
p=q; //<2F><><EFBFBD>ýӵ<C3BD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
fclose(fp); //<2F>ر<EFBFBD><D8B1>ļ<EFBFBD>
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
printf("**************************************Ŀ¼**************************************");
|
|
|
|
|
printf("\n********* 1<><31><EFBFBD>Ӽ<EFBFBD>¼ *********\n");
|
|
|
|
|
printf("\n********* 2<>ļ<DEB8>¼ *********\n");
|
|
|
|
|
printf("\n********* 3<><33>ʾ<EFBFBD><CABE>¼ *********\n");
|
|
|
|
|
printf("\n********* 4ͳ<34>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>¼ *********\n");
|
|
|
|
|
printf("\n********* 0 -EXIT- *********\n");
|
|
|
|
|
printf("\n********* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: *********\n");
|
|
|
|
|
scanf("%d",&flag);
|
|
|
|
|
switch(flag)
|
|
|
|
|
{
|
|
|
|
|
case 0: printf("\n>>>>>>>>>><3E><>ʾ:<3A>Ѿ<EFBFBD><D1BE>˳<EFBFBD>ϵͳ,ByeBye!\n");break;
|
|
|
|
|
case 1: Add(machine); break; //<2F><><EFBFBD>Ӽ<EFBFBD>¼
|
|
|
|
|
case 2: Modify(machine); break;//<2F>ļ<DEB8>¼
|
|
|
|
|
case 3: Disp(machine); break;//<2F><>ʾ<EFBFBD><CABE>¼<EFBFBD><C2BC>Ϣ
|
|
|
|
|
case 4: Tongji(machine); break;//ͳ<>Ƽ<EFBFBD>¼
|
|
|
|
|
default: printf("\n<EFBFBD><EFBFBD>ʾ:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n"); break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|