数据结构课程设计报告 - 图书管理系统 下载本文

数据结构课程设计——图书管理系统 35

{ FILE *fp_book; /*创建文件型指针*/ BK *p,*p0; p=h_book;

if((fp_book=fopen(\ /*创建文件,进行保存*/ { printf(\文件保存失败!\\n请重新启动本系统...\\n\ exit(0);

}

while(p!=NULL) {

if(fwrite(p,sizeof(BK),1,fp_book)!=1) 中*/ printf(\写入文件失败!\\n请重新启动本系统!\\n\ p0=p; p=p->next; free(p0);

}

h_book=NULL;

fclose(fp_book); /*关闭文件*/

}

void Load() /*加载信息*/ { Load_Reader(); Load_Book();

}

void Load_Reader() /*加载读者信息*/ {

RD *p1,*p2,*p3;

FILE *fp; /*创建文件型指针*/ fp=fopen(\ /*打开文件*/

/*将链表中的信息写入文件

数据结构课程设计——图书管理系统 36

p1=(RD *)malloc(sizeof(RD)); fread(p1,sizeof(RD),1,fp); h_reader=p3=p2=p1;

while(! feof(fp)) /*读出信息,重新链入链表*/ {

p1=(RD *)malloc(sizeof(RD)); fread(p1,sizeof(RD),1,fp); p2->next=p1; p3=p2; p2=p1;

}

p3->next=NULL; free(p1);

fclose(fp); /*关闭文件*/ }

void Load_Book() /*加载图书信息*/ {

BK *p1,*p2,*p3;

FILE *fp; /*创建文件型指针*/ fp=fopen(\ /*打开文件*/ p1=(BK *)malloc(sizeof(BK)); fread(p1,sizeof(BK),1,fp); h_book=p3=p2=p1;

while(! feof(fp)) /*读出信息,重新链入链表*/ { }

p1=(BK *)malloc(sizeof(BK)); fread(p1,sizeof(BK),1,fp); p2->next=p1; p3=p2; p2=p1;

数据结构课程设计——图书管理系统 37

}

p3->next=NULL; free(p1);

fclose(fp); /*关闭文件*/

int main() {

FILE *fp_book,*fp_reader; /*创建文件型指针*/ Login();

if((fp_book=fopen(\

Init();

else

Load();

Menu_select(); /*调用主菜单*/ }