【文章序言】:很高兴你能来阅读,博客分享日常编程,希望自己向着优秀程序员前行!
博客来源于项目以及编程中遇到的问题总结,偶尔会有读书分享,我会陆续更新Java前端、后台、数据库、项目案例等相关知识点总结,感谢你的阅读和关注,希望我的博客能帮助到更多的人,分享获取新知,大家一起进步!
吾等采石之人,应怀大教堂之心,愿我们奔赴在各自的热爱里…
业务背景
为了提高日常的图书管理效率,本设计针对通常的图书管理流程,以C模式设计了一个图书管理系统,主要完成对图书信息的录入,因此编写一个优质的图书信息管理系统是十分必要的。这套系统使用C语言编写,主要通过结构化设计和链表结构实现图书的信息管理,主要包括图书信息的录入、浏览、排序、删除和修改等功能。图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格等。图书信息的录入和显示要求有一定的规范格式,录入的图书信息用文件形式保存,并可以对其进行浏览、查询、删除和修改等基本操作。
运行效果
为方便对图书的管理,设计一图书信息管理系统,其主要功能如下:
(1)系统以菜单形式工作
(2)图书信息录入功能
(3)图书信息浏览功能
(4)图书信息查询功能
(5)图书信息删除和修改功能
目录大纲
录入图书
浏览图书
查询功能
按书名查询
按作者名查询
删除功能
删除后效果
修改功能:同前面
修改后效果
文档截图
项目有源码有文档,欢迎学习!
源码学习
新增功能
void putin()
{
int y=1;
system("cls"); //清除屏幕
while(y)
{
printf("\t请输入图书编码 :");
scanf("%s",library.book[library.count].number);
printf("\t请输入书名 :");
scanf("%s",library.book[library.count].name);
printf("\t请输入作者名 :");
scanf("%s",library.book[library.count].author);
printf("\t请输入出版商 :");
scanf("%s",library.book[library.count].publish);
printf("\t请输入录入时间 :");
scanf("%s",library.book[library.count].time);
printf("\t请输入书本价格 :");
fflush(stdin);
scanf("%f",&library.book[library.count].price);
library.count++;
printf("\n是否继续录入 (1是;0否 ) :");
fflush(stdin);
scanf("%d",&y);
if (y!=1)
{
y=0;
break;
}
}
save();
}
按书名查询
void search_by_name()
{
int i;
char s2[20];
int flag=1;
printf("\n请输入你想要查找的书名: ");
fflush(stdin);
scanf("%s",s2);
printf("编码\t书名\t作者名\t出版商\t录入时间\t价格\n");
for(i=0;i<library.count;i++ )
if(strcmp(s2,library.book[i].name)==0)
{
flag=0;
printf("%s\t%s\t%s\t%s\t%s\t%-12.2f\n",library.book[i].number,library.book[i].name,library.book[i].author,library.book[i].publish,library.book[i].time,library.book[i].price);
}
if (flag)
{
printf("无法找到!");
}
fflush(stdin);
getchar();
}
按作者名查询
void search_by_author()
{
int i;
char s3[20];
int flag=1;
printf("请输入你要查找的书籍作者名: ");
fflush(stdin);//
scanf("%s",s3);
printf("编码\t书名\t作者名\t出版商\t录入时间\t价格\n");
for(i=0;i<library.count;i++ )
if(strcmp(s3,library.book[i].author)==0)
{
flag=0;
printf("%s\t%s\t%s\t%s\t%s\t%12.2f\n",library.book[i].number,library.book[i].name,library.book[i].author,library.book[i].publish,library.book[i].time,library.book[i].price);
}
if (flag)
{
printf("无法找到!");
}
fflush(stdin);
getchar();
}
更新功能
void update()
{
int i;
char number[10];
system("cls"); /*清屏*/
printf("\n 请输入您想要修改的书籍的编码:");
fflush(stdin);
scanf("%s",number);
for (i=0;i<library.count;i++)
{
if(strcmp(number,library.book[i].number)==0)
{
printf("编码\t书名\t作者名\t出版商\t录入时间\t价格\n");
printf("%s\t%s\t%s\t%s\t%s\t%12.2f\n",library.book[i].number,library.book[i].name,library.book[i].author,library.book[i].publish,library.book[i].time,library.book[i].price);
break;
}
}
if (i!=library.count)
{
mbook book;
printf("\n请您输入修改后的信息 :\n");
printf("\t请输入您修改后的编码 :");
scanf("%s",book.number);
printf("\t请输入您修改后的书名 :");
scanf("%s",book.name);
printf("\t请输入您修改后的作者名 :");
scanf("%s",book.author);
printf("\t请输入您修改后的出版商 :");
scanf("%s",book.publish);
printf("\t请输入您修改后的录入时间 :");
scanf("%s",book.time);
printf("\t请输入您修改后的价格 :");
fflush(stdin);
scanf("%f",&book.price);
strcpy(library.book[i].name,book.name);
strcpy(library.book[i].number,book.number);
strcpy(library.book[i].publish,book.publish);
strcpy(library.book[i].author,book.author);
strcpy(library.book[i].time,book.time);
library.book[i].price=book.price;
save();
}
else
printf("\n 无法找到!\n");
fflush(stdin);
getchar();
}
项目有源码有文档,欢迎学习!
标签:课程设计,scanf,library,C语言,源码,printf,t%,book,图书 From: https://blog.csdn.net/weixin_45393094/article/details/140619742