C语言程序设计课程设计图书管理系统设计报告.doc

上传人:文库蛋蛋多 文档编号:2384718 上传时间:2023-02-17 格式:DOC 页数:12 大小:61KB
返回 下载 相关 举报
C语言程序设计课程设计图书管理系统设计报告.doc_第1页
第1页 / 共12页
C语言程序设计课程设计图书管理系统设计报告.doc_第2页
第2页 / 共12页
C语言程序设计课程设计图书管理系统设计报告.doc_第3页
第3页 / 共12页
C语言程序设计课程设计图书管理系统设计报告.doc_第4页
第4页 / 共12页
C语言程序设计课程设计图书管理系统设计报告.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《C语言程序设计课程设计图书管理系统设计报告.doc》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计图书管理系统设计报告.doc(12页珍藏版)》请在三一办公上搜索。

1、广东工业大学华立学院 课 程 设 计(论文) 课程名称_C语言程序设计_ 题目名称_图书信息管理系统设计_ 学生学部(系)_机电与信息工程学部_ 专业班级_12网络1班_ 学号_112252821020133_ 学生姓名_张树南_ 指导教师_田小玲_ 2013 年 7 月 5日 一题目内容的描述进入大学以后,学校有了更加丰富的图书资源,我可以更多的去查找或借阅自己喜欢的书籍。图书馆大量的图书不仅给工作人员带来了大量的工作量,同时还给人们带来了大量的麻烦,费神费力,迫切需要一个图书信息软件来解决这个问题,以便于对 图书的管理,于是尝试编写了一个小的图书信息管理程序,希望对人们有所帮助,可以参考使

2、用。 该程序一共有四个选项,可以进行用户添加、借阅、换书、退出、等功能,能保存图书信息、借书、还书、修改,操作界面简洁,方便的进行操作。足可以给人们节约大量的时间。程序用了条件、循环、结构体等知识点,可运用于小的管理软件。软件运用菜单实现交互式 管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足用户的需要。二应用程序功能的详细说明设计思路建立一个函数,用来保存图书的名字,作者,编号,库存等信息,完成图书信息管理的功能。主函数可以调用四个子函数,分别完成添加,查找,退出,三个功能。在主函数中可以设置调用四个子函数的方法,例如按1,2,3,4,0数字键,则分别可以执行

3、某个功能模块主要功能模块即如图1所示:图 书管 理查 找 注 册借 阅还 书注 销 图1 图书信息管理功能图程序设计根据所构想的的功能及模块设计出与之相对应的算法并建立函数来实现功能。数据结构体的定义 将图书信息作为一个结构体。struct BOOK int id,usr10,total,store,days10; char name31,author21; books100;main( )主函数主函数是函数的入口,采用模块化设计,主函数应该尽可能简捷,功能体现其中,首先含有一个菜单函数来说明各个数字所实现的功能,通过menu_ item来显示当前的状态,通过getch( )输入的数字来实现功

4、能的选取,用switch和 break语句来实现不同功能的切换。查找图书函数该函数通过判断输入的数字是否与已存在图书的编号相同,用if语句3进行判断,如果相同输出查找图书的信息(作者,书名,库存),用返回函数return来返回查找函数的编号,如果不相同则返回-1以下是查找图书流程图如图2所示开始图书信息=i输入错误或无效图书号作者,书名,库存结 束输入in=0n100Nn+Y图2 查找图书流程图注册新书函数该函数通过判断输入的书的id数值是否为零,如果为零则用break4来跳出,如果不为零且小于100,则用scanf函数输入该书的作者,书名,库存等信息,用printf函数把这些信息显示在屏幕上

5、。如图3所示是注册新书的流程图开 始n=0输出图书信息Yn100结束图书=0n+Nbreak图3 注册新书流程图借阅函数该函数首先调用search()函数来判断通过判断输入图书的序号是否为-1和库存是否大与零来判断此书是否存在,如果条件成立,用scanf函数输入借书证号和所借天数,并且库存量减一,如果条件不成立则输出该图书已全部借出。以下是借书函数的流程图如图4所示开 始库存量减1结束查找图书不等于-1和库存量大于0l=0l10卡号等于s,借阅天数等于dl+此书已全部借 出NY输入s,d查找图书=0NzzzzY图4借阅图书函数流程图归还函数该函数通过调用search( )函数来判断该书是否存在

6、,如果存在,用scanff( )函数输入图书证序号,用if语句来判断图书信息是否正确,如果正确则所有借阅信息归零,且库存量增加1.并打印“全部入藏”如图5所示开始l10查找函数不等于-1和现有量小于库存量输出图书信息l=0输入s卡号等于s卡号等于0,所借天数=0NYYl+N库存量加1结束全部入藏卡号等于s图5 归还图书流程图注销图书函数该函数通过调用search( )函数来判段要注销的书是否存在,如果存在则通过调用该函数则可提示该书已注销。三程序源代码#include #include #include struct BOOK int id,usr10,total,store,days10;

7、char name31,author21; books100; /*上面是结构体的定义,用于存放书籍及借书的信息。*/ void page_title(char *menu_item) printf( 图 书 管 理 系 统 nn- %s -nn,menu_item); /*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/ void return_confirm(void) printf(n按任意键返回n); getch(); /*上面是返回前请求确认的函数,以便在返回前观察结果*/ int search_book(void) int n,i; printf(请输

8、入图书序号:); scanf(%d,&i); for(n=0;n0) printf(请输入借书证序号:); scanf(%d,&s); printf(请输入可借天数:); scanf(%d,&d); for(l=0;l10;l+) if(booksn.usrl=0) booksn.usrl=s; booksn.daysl=d; break; booksn.store-; if(n!=-1&booksn.store=0) printf(此书已经全部借出.n); return_confirm(); /*上面是借书的函数,首先调用找书函数*/ void book_in(void) int n,s,l

9、; page_title(归还图书); If(n=search_book()!=-1&booksn.storebooksn.total) printf(借阅者图书证列表:n); for(l=0;l10;l+) if (booksn.usrl!=0) printf(%d - %d天n,booksn.usrl,booksn.daysl); printf(请输入借书证序号:); scanf(%d,&s); for(l=0;l10;l+) if(booksn.usrl=s) booksn.usrl=0; booksn.daysl=0; break; booksn.store+; if(n!=-1&bo

10、oksn.store=booksn.total) printf(全部入藏.n); return_confirm(); void book_add(void) int n; page_title(注册新书); for(n=0;n100;n+) if(booksn.id=0) break; printf(序号:); scanf(%d,&booksn.id); printf(书名:); scanf(%s,&booksn.name); printf(作者:); scanf(%s,&booksn.author); printf(数量:); scanf(%d,&booksn.total); booksn.

11、store=booksn.total; return_confirm(); void book_del(void) int n; page_title(注销旧书); if(n=search_book()!=-1) booksn.id=0; printf(该书已注销.n); return_confirm(); void main(void) menu: page_title(操作选单); printf(请用数字键选择操作nn); printf(1 借阅图书nprintf(“2 归还图书n); printf(3 注册新书n4 注销旧书nn); printf(0 退出n); switch(getch

12、() case 1 : book_out();break; case 2 : book_in();break; case 3 : book_add();break; case 4 : book_del();break; case 0 : exit(0); goto menu; 四 结束语这次图书管理系统系统的设计是我第一次用C语言来设计程序,他检验了我这个学期的对C语言的学习成果,使我对C语言有了更深刻的认识,注意到许多以前没有注意的问题,对我的C语言程序设计能力有了很大的提高,也许这次的程序有不少的缺点,但我从中也学习到了很多东西,希望下次做出来的程序能够更加优秀。心得体会由于这个学期才开始

13、接触SQL数据库,在设计的过程中,我遇到了不少的问题,发现原来设计出一个规范的数据库模型是很有学问的。经过老师的指导、同学们的帮助和对之前学过的SQL数据库模型知识的复习,才设计出一个比较合理的数据库模型。此外,我对VC+数据库开发有了更深的体会,掌握了不少ADO数据库开发技术的运用方式和技巧,并成功的解决了问题。通过这次课程设计,我学到了很多,得到了很多,不仅充分的将在书本中学到的知识运用到解决实际问题上,而且加强了自己的动手能力。我会总结出这次课程设计的所有的成功以及失败的经验和心得,并希望老师能够批评指出存在的错误之处,期待有更多的机会让我实践理论知识。教师评语 年 月 日成绩及签名 年 月 日

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号