好文档 - 专业文书写作范文服务资料分享网站

C语言程序设计 - -图书信息管理系统

天下 分享 时间: 加入收藏 我要投稿 点赞

}

}

}

getchar();

printf(\请输入作者名:\ scanf(\ getchar();

printf(\请输入出版社:\ scanf(\ getchar();

printf(\请输入类别:\ scanf(\ getchar();

printf(\请输入出版时间:\ scanf(\ getchar();

printf(\请输入价格:\ scanf(\ getchar();

return head;

int yanzheng(struct book *head,int m) { }

//将新链表写入文件中

void fprint(struct book *head) {

struct book *p; p=head; while(p!=NULL){ }

if(p==NULL)

return 0; if(p->num==m)

break;

p=p->next;

else

return 1;

FILE *fp; char ch='1'; struct book *p1;

if((fp=fopen(\字符IO流 }

fputc(ch,fp);//将字符ch写到文件指针fp所指向的文件的当前写指针的位置 for(p1=head;p1;p1=p1->next){//依次写入

fprintf(fp,\

printf(\ exit(0);

1->sort,p1->time,p1->price);

}

fclose(fp);//关闭 释放内存

} ——本代码由 闫 鹏 设计 //从文件中读取图书信息 struct book *load() {

FILE *fp; char ch;

struct book *head,*tail,*p1; head=tail=NULL;//链表初始化 if((fp=fopen(\ }

ch=fgetc(fp);//意为从文件指针fp指向的文件中读取一个字符 读取一个字节后 光

printf(\ exit(0);

标位置后移一个字节

if(ch=='1')

{

while(!feof(fp)){//检测fp流上的文件结束符

p1=(struct book *)malloc(sizeof(struct book));

fscanf(fp,\1->time,&p1->price);

if(head==NULL)

head=p1;

else

tail->next=p1;

tail=p1; }

tail->next=NULL; fclose(fp);

return head; }

//将整个链表的信息输出

void print_book(struct book *head) {

printf(\struct book *ptr; if(head==NULL){ }

printf(\图书信息列表如下\\n\

printf(\ printf(\编号 图书名 作者名 出版社 类别 出版时间 价格\\n\ for(ptr=head;ptr;ptr=ptr->next)//依次输出

printf(\没有信息!\\n\ return; } else

return NULL;

name,ptr->press,ptr->sort,ptr->time,ptr->price);

printf(\

} ——本代码由 张旭东 设计 //删除图书信息

void deletebook(struct book *head) {

int a; char b,ch='1'; struct book *p1,*p2; FILE *fp;

printf(\请输入要删除的图书编号:\ scanf(\

p1=head;

if(p1->num==a&&p1->next==NULL){//当文件中只有一组数据

printf(\是否清空文件!(y/n)\\n\ getchar(); scanf(\ getchar(); switch(b){ case 'n':

break;

case 'y':

if((fp=fopen(\重新写入

printf(\ exit(0);

}

fclose(fp);

} else{

}

printf(\文件已清空!\\n\

while(p1->num!=a&&p1->next!=NULL){//当文件中不只有一组数据

p2=p1; p1=p1->next; }

if(p1->next==NULL){

if(p1->num==a){

p2->next=NULL;

printf(\是否确定从文件中彻底删除该图书?(y/n)\\n\

getchar();

scanf(\ switch(b){

case 'n':

break;

case 'y':

fprint(head);

printf(\删除成功!\\n\

getchar(); break;

}

}

else{

printf(\没有找到要删除的数据!\\n\ getchar(); }

}

else if(p1==head){

head=p1->next;

printf(\是否确定从文件中彻底删除该图书?(y/n)\\n\

getchar();

scanf(\

switch(b){ case 'n':

break;

case 'y':

fprint(head);

printf(\删除成功!\\n\

getchar();

break; }

}

else{

p2->next=p1->next;

printf(\是否确定从文件中彻底删除该图书?(y/n)\\n\

getchar();

scanf(\

switch(b){ case 'n':

break;

case 'y':

fprint(head);

printf(\删除成功!\\n\

getchar();

}

break; }

}

C语言程序设计 - -图书信息管理系统

}}}getchar();printf(\请输入作者名:\scanf(\getchar();printf(\请输入出版社:\scanf(\getchar();printf(\请输入类别:
推荐度:
点击下载文档文档为doc格式
2704z3cb4h4ncj33s2bw8iiwn479cv0188w
领取福利

微信扫码领取福利

微信扫码分享