图书管理程序c语言版.docx

上传人:b****5 文档编号:6151577 上传时间:2023-01-04 格式:DOCX 页数:15 大小:15.83KB
下载 相关 举报
图书管理程序c语言版.docx_第1页
第1页 / 共15页
图书管理程序c语言版.docx_第2页
第2页 / 共15页
图书管理程序c语言版.docx_第3页
第3页 / 共15页
图书管理程序c语言版.docx_第4页
第4页 / 共15页
图书管理程序c语言版.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

图书管理程序c语言版.docx

《图书管理程序c语言版.docx》由会员分享,可在线阅读,更多相关《图书管理程序c语言版.docx(15页珍藏版)》请在冰豆网上搜索。

图书管理程序c语言版.docx

图书管理程序c语言版

#include"stdio.h"

#include"string.h"

#defineLENsizeof(structbook)

structbook

{

longISBN;

charname[40],author[40],bookconcern[40],day[10];

doubleprice;

structbook*next;

};

voidface()

{

inti,j=2;

for(i=0;i<75;i++)

{

printf("*");

}

printf("\n*");

for(i=0;i<30;i++)

{

printf("");

}

printf("图书登记管理程序");

for(i=0;i<27;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<73;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("1.录入图书的信息");

for(i=0;i<30;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("2.根据ISBN编号查找图书信息");

for(i=0;i<20;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("3.根据ISBN编号修改图书信息");

for(i=0;i<20;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("4.根据ISBN编号删除图书信息");

for(i=0;i<20;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("5.根据书名查找图书的信息");

for(i=0;i<22;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("6.根据出版社查找图书的信息");

for(i=0;i<20;i++)

{

printf("");

}

printf("*");

printf("\n*");

for(i=0;i<27;i++)

{

printf("");

}

printf("7.统计");

for(i=0;i<40;i++)

{

printf("");

}

printf("*");

while(j!

=0)

{

printf("\n*");

for(i=0;i<73;i++)

{

printf("");

}

printf("*");

j--;

}

printf("\n");

for(i=0;i<75;i++)

{

printf("*");

}

printf("\n请输入操作编号:

");

}

structbook*write(structbook*head)

{

structbook*p,*p1=head;

p=(structbook*)malloc(LEN);

printf("\n请输入的图书的ISBN编号:

");

scanf("%ld",&p->ISBN);

printf("\n请输入的图书的书名:

");

scanf("%s",&p->name);

printf("\n请输入的图书的作者:

");

scanf("%s",&p->author);

printf("\n请输入的图书的出版社:

");

scanf("%s",&p->bookconcern);

printf("\n请输入的图书的出版日期:

");

scanf("%s",&p->day);

printf("\n请输入的图书的价格:

");

scanf("%lf",&p->price);

p->next=NULL;

if(head==NULL)

head=p;

else

{

while(head->next!

=NULL)

head=head->next;

head->next=p;

head=p1;

}

returnhead;

}

voidcheck(structbook*head)

{

intb=0;

structbook*p2,*p3;

p2=(structbook*)malloc(LEN);

printf("\n请输入要查找的图书的ISBN编号:

");

scanf("%ld",&p2->ISBN);

p3=head;

while(p3!

=NULL)

{

if(p3->ISBN==p2->ISBN)

{

if(b==0)

{

printf("查找的图书的信息");

b=1;

printf("\nISBN编号书名作者出版社出版日期价格\n");

}

printf("\n%-12ld%-12s%-10s%-10s%-12s%-6.2lf\n",p3->ISBN,p3->name,p3->author,p3->bookconcern,p3->day,p3->price);

}

p3=p3->next;

}

if(b==0)

printf("\nerror:

所输入的编号ISBN的图书不在书库中");

}

structbook*rework(structbook*head)

{

structbook*p2,*p3;

intb=0;

p2=(structbook*)malloc(LEN);

sige3:

printf("\n请输入要修改的图书的ISBN编号:

");

scanf("%ld",&p2->ISBN);

p3=head;

while(p3!

=NULL)

{

if(p3->ISBN==p2->ISBN)

{

if(b==0)

{

printf("所需修改的图书的信息");

b=1;

printf("\nISBN编号书名作者出版社出版日期价格\n");

}

printf("\n%-12ld%-12s%-10s%-10s%-12s%-6.2lf\n",p3->ISBN,p3->name,p3->author,p3->bookconcern,p3->day,p3->price);

break;

}

p3=p3->next;

}

if(p3==NULL)

{

printf("\nerror:

所输入的图书ISBN编号不再书库中");

gotosige3;

}

printf("\n是否确认修改这本书?

是请输入1,否请输入0,\n返回到输入要删除的图书的ISBN编号请输入2:

");

scanf("%d",&b);

while(b!

=1&&b!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&b);

}

if(b==2)gotosige3;

if(b==1)

{

printf("\n请输入修改后的图书的ISBN编号:

");

scanf("%ld",&p3->ISBN);

printf("\n请输入修改后的图书的书名:

");

scanf("%s",&p3->name);

printf("\n请输入修改后的图书的作者:

");

scanf("%s",&p3->author);

printf("\n请输入修改后的图书的出版社:

");

scanf("%s",&p3->bookconcern);

printf("\n请输入修改后的图书的出版日期:

");

scanf("%s",&p3->day);

printf("\n请输入修改后的图书的价格:

");

scanf("%lf",&p3->price);

printf("\n已经修改ISBN编号为%ld的图书",p2->ISBN);

}

returnhead;

}

structbook*delete(structbook*head)

{

structbook*p2,*p3,*p;

intb;

p2=(structbook*)malloc(LEN);

sige2:

printf("\n请输入要删除的图书的ISBN编号:

");

scanf("%ld",&p2->ISBN);

p3=head;b=0;

while(p3!

=NULL)

{

if(p3->ISBN==p2->ISBN)

{

if(b==0)

{

printf("所需修改的图书的信息");

b=1;

printf("\nISBN编号书名作者出版社出版日期价格\n");

}

printf("\n%-12ld%-12s%-10s%-10s%-12s%-6.2lf\n",p3->ISBN,p3->name,p3->author,p3->bookconcern,p3->day,p3->price);

break;

}

p=p3;

p3=p3->next;

}

if(p3==NULL)

{

printf("\nerror:

所输入的图书ISBN编号不再书库中");

gotosige2;

}

printf("\n是否确认删除这本书?

是请输入1,否请输入0,\n返回到输入要删除的图书的ISBN编号请输入2:

");

scanf("%d",&b);

while(b!

=1&&b!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&b);

}

if(b==2)gotosige2;

if(b==1)

{

p->next=p3->next;

printf("\n已经删除ISBN编号为%ld的图书",p2->ISBN);

}

returnhead;

}

voidlookupname(structbook*head)

{

structbook*p2,*p3;

intb=0;

p2=(structbook*)malloc(LEN);

printf("\n请输入要查找的图书的书名:

");

scanf("%s",&p2->name);

p3=head;

while(p3!

=NULL)

{

if(strstr(p3->name,p2->name))

{

if(b==0)

{

printf("所查找的图书的信息");

b=1;

printf("\nISBN编号书名作者出版社出版日期价格\n");

}

printf("\n%-12ld%-12s%-10s%-10s%-12s%-6.2lf\n",p3->ISBN,p3->name,p3->author,p3->bookconcern,p3->day,p3->price);

}

p3=p3->next;

}

}

voidlookupbookconcern(structbook*head)

{

structbook*p2,*p3;

intb=0;

p2=(structbook*)malloc(LEN);

printf("\n请输入要查找的图书的出版社:

");

scanf("%s",&p2->bookconcern);

p3=head;

while(p3!

=NULL)

{

if(strstr(p3->bookconcern,p2->bookconcern))

{

if(b==0)

{

printf("所查找的图书的信息");

b=1;

printf("\nISBN编号书名作者出版社出版日期价格\n");

}

printf("\n%-12ld%-12s%-10s%-10s%-12s%-6.2lf\n",p3->ISBN,p3->name,p3->author,p3->bookconcern,p3->day,p3->price);

}

p3=p3->next;

}

}

main()

{

inta;

structbook*book=NULL;

sige:

face();

scanf("%d",&a);

while(a!

=1&&a!

=2&&a!

=3&&a!

=4&&a!

=5&&a!

=6&&a!

=7)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

while(a==1)

{

book=write(book);

printf("\n继续录入新图书的信息请输入1,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=1&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

while(a==2)

{

check(book);

printf("\n继续查找图书的信息请输入2,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=2&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

while(a==3)

{

book=rework(book);

printf("\n继续修改图书的信息请输入3,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=3&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

while(a==4)

{

book=delete(book);

printf("\n继续删除图书的信息请输入4,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=4&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

while(a==5)

{

lookupname(book);

printf("\n继续按书名查找图书的信息请输入5,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=5&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

while(a==6)

{

lookupbookconcern(book);

printf("\n继续按出版社查找图书的信息请输入6,返回上级目录请按0,均以回车结束:

");

scanf("%d",&a);

while(a!

=6&&a!

=0)

{

printf("\nerror:

所输入操作编号有误,请重新输入:

");

scanf("%d",&a);

}

if(a==0)

gotosige;

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1