广义表的应用 联系客服

发布时间 : 星期五 文章广义表的应用更新完毕开始阅读6f770d51eff9aef8941e0692

cout<<\==========\

if(p==NULL&&flag==0) {

cout<<\没有相关信息!\ cout<<\==========\ return 1; }

cout<<\==========\ }

return 1; }

int Search_AllM(MemberList &L) //查询所有会员信息 {

Member *p;

int i=0,flag=0; p=L->next;

for(;p!=NULL;p=p->next) {

if(flag==0)

cout<

cout<num<name; if(p->sex=='M')

cout<

else if(p->sex=='F')

cout<

if(p->yes==1)

cout<

cout<

flag=1; i++; }

cout<<\共计\名会员。\ int MemberSearch(MemberList &L) {

int m;

while(m!=0) {

cout<<\ 会员管理\

cout<<\**********\

cout<<\按姓名查询 2. 查询所有会员信息\ cout<<\退出\

cout<<\**********\

cout<<\请输入您的选择:\ cin>>m;

cout<<\==========\ switch(m) {

case

1:Search_MemberName(L); break; //按姓名查询

case

2:Search_AllM(L);break; //查询所有会员信息

case 0:break; //退出 } }

return 1; }

//删除会员

int MemberDel(MemberList &L) //以会员编号作为主键进行删除 {

27

Member *p; long n; int flag=0; p=L;

cout<<\输入要删除的会员的编号:\{

Member *p;

int j,flag=0,max,k=0; long n;

Search_AllM(L);

cin>>n;

for(;p!=NULL;p=p->next) {

if(p->next!=NULL&&p->next->num==n)

{

if(p->next->yes==1) {

cout<<\当前会员借了书,不能删除!\

cout<<\==========\

return 1; }

p->next=p->next->next; //删除语句

cout<<\成功删除!\

cout<<\==========\

flag=1; //成功删除标记 break; } }

if(p==NULL&&flag==0) {

cout<<\该会员不存在。删除不成功!\已经被删除或没有这个会员

cout<<\==========\ }

return 1; }

//借书信息

int BorrowInfo(MemberList &L) cout<<\输入要查询的会员编号:\ cin>>n;

for(p=L;p!=NULL;p=p->next) {

if(p->num==n&&p->yes==1) {

cout<<\借书详细情况:\

cout<<\==========\

for(j=1;j<=max;j++) {

if(p->t[j].num!=0) {

k++;

if(flag==0)

cout<<\本数\编号\借书时间\

cout<t[j].num<

cout<<\==========\ }

else if(p->num==n&&p->yes==0) {

cout<<\无借书记录!\

cout<<\==========\ } }

return 1;

28

}

Book *H; //图书链表 Member *L; //会员链表

//主函数 void main() {

FILE *fpb1,*fpb2,*fpm1,*fpm2; //文件指针

Book *p1,*p2,*s1; Member *q1,*q2,*s2; H=Init_B(); L=Init_M();

fpb1=fopen(\//读方式打开图书文件 if(fpb1!=NULL) {

p1=(Book

*)malloc(sizeof(Book)); if(!p1) exit(1); p1->next=NULL;

while(fread(p1,sizeof(Book),1,fpb1)==1) {

if(H->next==NULL) {

H->next=p1; s1=p1; } else {

s1->next=p1; s1=p1; }

p1=(Book *)malloc(sizeof(Book));

if(!p1) exit(1); p1->next=NULL; } }

fpm1=fopen(\//读方式打开会员文件 if(fpm1!=NULL) {

q1=(Member

*)malloc(sizeof(Member)); if(!q1) exit(1); q1->next=NULL;

while(fread(q1,sizeof(Member),1,fpm1)==1) {

if(L->next==NULL) {

L->next=q1; s2=q1; } else {

s2->next=q1; s2=q1; }

q1=(Member *)malloc(sizeof(Member)); if(!q1) exit(1); q1->next=NULL; } }

int m,n; while(m!=0) {

cout<<\欢迎进入图书借阅管理系统 \ cout<<\

************************************\<

cout<<\图书管理 \ cout<<\会员管理 \ cout<<\退出系统 \

cout<<\***********\

cout<<\请在此输入您的选择:\ cin>>m;

cout<<\

29

==========\ cout<<\1.增加会员 3.删 cout<>n; cout<<\==========\ switch(n) { case 1:BookAdd(H); break; //增加图书 case 2:BookSearch(H); break; //查询图书 case 3:BookDel(H); break; //删除图书 case 4:BookBorrow(H,L); break; //图书借阅 case 0:break; //退出图书管理,返回上一层菜单 } } else if(m==2) { cout<<\会员管理 \ cout<<\***********************************\>n; cout<<\==========\ switch(n) { case 1:MemberAdd(L); break; //增加会员 case 2:MemberSearch(L); break; //查询会员 case 3:MemberDel(L); break; //删除会员 case 4:BorrowInfo(L); break; //借书信息 case 0:break; //退出会员管理,返回上一层菜单 } } else if(m==0) { cout<next;p2!=NULL;p2=p2->next) fwrite(p2,sizeof(Book),1,fpb2); fclose(fpb2); fpm2=fopen(\ for(q2=L->next;q2!=NULL;q2=q2->ne

30