- 1、本文档共43页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计-图书信息管理系统汇
1.课程设计的目
随着社会的飞速发展,人们越来越知道知识的重要性,越来越喜欢进入图书馆,查找或借阅自己喜欢的书籍。图书馆大量的图书不仅给工作人员带来了大量的工作量,同时还给人们带来了大量的麻烦,费神费力,迫切需要一个图书信息软件来解决这个问题,以便于对 图书的管理,于是尝试编写了一个小的图书信息管理程序,希望对人们有所帮助,可以参考使用。
该程序一共有四个选项,可以进行用户添加、借阅、换书、退出、等功能,能保存图书信息、借书、还书、修改,操作界面简洁,方便的进行操作。足可以给人们节约大量的时间。
程序用了条件、循环、结构体[1]等知识点,可运用于小的管理软件。软件运用菜单实现交互式 管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足用户的需要。
2.设计方案论证
2.1设计思路
建立一个函数[2],用来保存图书的名字,作者,编号,库存等信息,完成图书信息管理的功能。主函数可以调用四个子函数,分别完成添加,查找,退出,三个功能。在主函数中可以设置调用四个子函数的方法,例如按1,2,3,4,0数字键,则分别可以执行某个功能模块
主要功能模块即如图1所示:
图1 图书信息管理功能图
2.2程序设计
根据所构想的的功能及模块设计出与之相对应的算法并建立函数来实现功能。
2.2.1数据结构体的定义
将图书信息作为一个结构体。
struct BOOK
{ int id,usr[10],total,store,days[10];
char name[31],author[21];
}books[100];
2.2.2 main( )主函数
主函数是函数的入口,采用模块化设计,主函数应该尽可能简捷,功能体现其中,首先含有一个菜单函数来说明各个数字所实现的功能,通过menu_ item来显示当前的状态,,通过getch( )输入的数字来实现功能的选取,用switch和 break语句来实现不同功能的切换。
2.2.3查找图书函数
该函数通过判断输入的数字是否与已存在图书的编号相同,用if语句[3]进行判断,如果相同输出查找图书的信息(作者,书名,库存),用返回函数return来返回查找函数的编号,如果不相同则返回-1
以下是查找图书流程图如图2所示
图2 查找图书流程图
2.2.4注册新书函数
该函数通过判断输入的书的id数值是否为零,如果为零则用break[4]来跳出,如果不为零且小于100,则用scanf函数输入该书的作者,书名,库存等信息,用printf函数把这些信息显示在屏幕上。
如图3所示是注册新书的流程图
图3 注册新书流程图
2.2.5借阅函数
该函数首先调用search()函数来判断通过判断输入图书的序号是否为-1和库存是否大与零来判断此书是否存在,如果条件成立,用scanf函数输入借书证号和所借天数,并且库存量减一,如果条件不成立则输出该图书已全部借出。
以下是借书函数的流程图如图4所示
l
图4借阅图书函数流程图
2.2.6归还函数
该函数通过调用search( )函数来判断该书是否存在,如果存在,用scanff( )函数输入图书证序号,用if语句来判断图书信息是否正确,如果正确则所有借阅信息归零,且库存量增加1.并打印“全部入藏”如图5所示
图5 归还图书流程图
2.2.7注销图书函数
该函数通过调用search( )函数来判段要注销的书是否存在,如果存在则通过调用该函数则可提示该书已注销。
2.3 源程序
#include stdio.h
#include stdlib.h
#include conio.h
struct BOOK
{
int id,usr[10],total,store,days[10];
char name[31],author[21];
}books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/
void page_title(char *menu_item)
{
printf( 图 书 管 理 系 统 \n\n- %s -\n\n,menu_item);
}
/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/
void return_confirm(void)
{
printf(\n按任意键返回……\n);
getch();
}
/*上面是返回前请求确认的函数,以便在返回前观察结果*/
int search_book(void)
{
int n,i;
printf(请输入图书序号:);
scanf(%d,i);
for(n=0;n100;n++)
{
if(books[n].id==i)
{
pr
文档评论(0)