《2022年C语言课程设计-图书信息管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言课程设计-图书信息管理系统 .pdf(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程设计说明书No.1沈阳大学1课程设计的目随着社会的飞速发展, 人们越来越知道知识的重要性, 越来越喜欢进入图书馆, 查找或借阅自己喜欢的书籍。图书馆大量的图书不仅给工作人员带来了大量的工作量 , 同时还给人们带来了大量的麻烦, 费神费力,迫切需要一个图书信息软件来解决这个问题,以便于对图书的管理 , 于是尝试编写了一个小的图书信息管理程序,希望对人们有所帮助,可以参考使用。该程序一共有四个选项,可以进行用户添加、借阅、换书、退出、等功能,能保存图书信息、借书、还书、修改,操作界面简洁,方便的进行操作。足可以给人们节约大量的时间。程序用了条件、循环、结构体1等知识点,可运用于小的管理软件。软
2、件运用菜单实现交互式管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足用户的需要。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 43 页 - - - - - - - - - 课程设计说明书No.2沈阳大学2设计方案论证21 设计思路建立一个函数2,用来保存图书的名字,作者,编号,库存等信息,完成图书信息管理的功能。主函数可以调用四个子函数,分别完成添加,查找,退出,三个功能。在主函数中可以设置调用四个子函数的方法,例如按1,2,3,4,0数
3、字键,则分别可以执行某个功能模块主要功能模块即如图1 所示:图 1 图书信息管理功能图2.2 程序设计根据所构想的的功能及模块设计出与之相对应的算法并建立函数来实现功能。2.2.1 数据结构体的定义将图书信息作为一个结构体。struct BOOK int id,usr10,total,store,days10; char name31,author21; books100; 2.2.2 main( )主函数主函数是函数的入口, 采用模块化设计, 主函数应该尽可能简捷, 功能体现其中,首先含有一个菜单函数来说明各个数字所实现的功能,通过menu_ item 来显示当前的状态,通过 getch(
4、) 输入的数字来实现功能的选取, 用 switch 和 break语句来实现不同功能的切换。图书管理查 找注 册借 阅还 书注 销名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 43 页 - - - - - - - - - 课程设计说明书No.3沈阳大学2.2.3 查找图书函数该函数通过判断输入的数字是否与已存在图书的编号相同,用if 语句3进行判断,如果相同输出查找图书的信息(作者,书名,库存),用返回函数 return 来返回查找函数的编号,如果不相同则返回-1 以下
5、是查找图书流程图如图2 所示图 2 查找图书流程图2.2.4 注册新书函数该函数通过判断输入的书的id 数值是否为零,如果为零则用break4来跳出,如果不为零且小于100,则用 scanf 函数输入该书的作者,书名,库存等信息,用printf 函数把这些信息显示在屏幕上。如图 3 所示是注册新书的流程图开始图书信息 =i 输入错误或无效图书号作者,书名,库存结 束输入 i n=0 n100 N n+ Y 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 43 页 - -
6、- - - - - - - 课程设计说明书No.4沈阳大学图 3 注册新书流程图2.2.5 借阅函数该函数首先调用search()函数来判断通过判断输入图书的序号是否为-1 和库存是否大与零来判断此书是否存在,如果条件成立, 用 scanf 函数输入借书证号和所借天数,并且库存量减一,如果条件不成立则输出该图书已全部借出。以下是借书函数的流程图如图4 所示开始n=0 输出图书信息Y n100 结束图书 =0 n+ N break 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页
7、,共 43 页 - - - - - - - - - 课程设计说明书No.5沈阳大学l图 4 借阅图书函数流程图2.2.6归还函数该函数通过调用 search( )函数来判断该书是否存在,如果存在,用scanff( )函数输入图书证序号,用if 语句来判断图书信息是否正确,如果正确则所有借阅信息归零,且库存量增加1.并打印“全部入藏”如图5 所示开 始库存量减1 结束查找图书不等于-1和库存量大于l=0 l10 卡号等于s,借阅天数等于d l+ 此书已全部借出N Y 输入 s,d 查找图书 =0 NY 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -
8、- - - - - 名师精心整理 - - - - - - - 第 5 页,共 43 页 - - - - - - - - - 课程设计说明书No.6沈阳大学图 5 归还图书流程图2.2.7注销图书函数该函数通过调用 search( )函数来判段要注销的书是否存在,如果存在则通过调用该函数则可提示该书已注销。开始l10 查找函数不等于-1 和现有量小于库存量输出图书信息l=0 输入 s 卡号等于s 卡号等于0,所借天数 =0 N Y Y l+ N 库存量加 1 结束全部入藏卡号等于 s 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
9、 名师精心整理 - - - - - - - 第 6 页,共 43 页 - - - - - - - - - 课程设计说明书No.7沈阳大学2.3 源程序#include #include #include struct BOOK int id,usr10,total,store,days10; char name31,author21; books100; /*上面是结构体的定义,用于存放书籍及借书的信息。*/ void page_title(char *menu_item) printf( 图 书 管 理 系 统 nn- %s -nn,menu_item); /*上面是打印页眉的函数,同时通过
10、参数menu_item,可以显示当前的状态。*/ void return_confirm(void) printf(n 按任意键返回n); getch(); /*上面是返回前请求确认的函数,以便在返回前观察结果*/ int search_book(void) int n,i; printf( 请输入图书序号:); 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;
11、booksn.daysl=d; break; booksn.store-; if(n!=-1&booksn.store=0) printf(此书已经全部借出.n); return_confirm(); /*上面是借书的函数,首先调用找书函数*/ void book_in(void) int n,s,l; 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,boo
12、ksn.usrl,booksn.daysl); printf( 请输入借书证序号:); scanf(%d,&s); for(l=0;l10;l+) if(booksn.usrl=s) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 43 页 - - - - - - - - - 课程设计说明书No.9沈阳大学booksn.usrl=0; booksn.daysl=0; break; booksn.store+; if(n!=-1&booksn.store=booksn.to
13、tal) 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.store=bo
14、oksn.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 借阅图书 n printf( “ 2 归还图书 n); printf(3 注册新书 n4 注销旧书 nn); 名师资料总结 - - -精品资料欢迎下载
15、- - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 43 页 - - - - - - - - - 课程设计说明书No.10沈阳大学printf(0 退出 n); switch(getch() 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; 名师资料总结 - - -精品资料欢迎下载 - - - -
16、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 43 页 - - - - - - - - - 课程设计说明书No.11沈阳大学3设计结果与分析在 visual C+ 6.0环境中输入源程序,在没有提示错误的情况下编译,生成.exe 可执行文件。 双击文件,会看到如图6 所示界面。该图是一个菜单函数,通过scanf ( )函数输入数字来选择各个功能的选择和转换。根据用户的选择,分别调用其他自定义函数。 该界面同时也调用add( ) 函数,在输入数字3 按回车后会提示输入序号,书名,作者,库存,用户可以把要增加的图书信息进行输入。
17、如图6 所示图 6 菜单和注册新书界面该函数通过scanf( )函数来选择注册功能,同时提示输入图书信息,如输入序号:056 作者:曹雪芹数量: 5000 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 43 页 - - - - - - - - - 课程设计说明书No.12沈阳大学 该界面是调用 out( ) 函数,在输入数字1 按回车后会提示输入所借图书的序号,之后会自动弹出该图书的所有已输入的信息,之后会提示输入借书证号和所借天数,如图 7 所示。图 7 借阅图书界
18、面如输入图书序号: 056 界面会自动弹出与该图书有关的所有信息,再输入借书证序号: 1002,所借天数: 3 之后就完成了借阅图书的操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 43 页 - - - - - - - - - 课程设计说明书No.13沈阳大学该界面是调用 in( )函数界面,在输入数字 2 按回车后会提示输入图书序号,之后会自动弹出该图书的所有信息且库存量自动加一,并打印“全部入藏”。如图 8 所示图 8 归还图书界面如输入图书序号:056 界面
19、就会自动弹出该图书的所有信息及判断所借图书证号是否与系统保存的一致,并把此书归与保存图书函数中,即完成了图书的归还。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 43 页 - - - - - - - - - 课程设计说明书No.14沈阳大学该界面是调用 del( )函数,在输入 4 后会提示输入图书序号,之后会显示该书的信息,并打印“该书已注销” 。如图 9 所示图 9 注销图书界面如输入图书序号: 056 系统自动弹出有关该书的信息,通过调用del() 函数进而对该
20、书进行注销。按数字“ 0”会得到 exit()函数从而退出运行程序。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 43 页 - - - - - - - - - 课程设计说明书No.15沈阳大学4 设计体会这次计算机 C语言程序设计是一次综合性设计,它不仅检验了我这个学期C语言程序学的是否扎实, 同时也使我在高级语言设计上有所提高,我从中得到了很深的体会原来计算机语言是如此的神奇。题目中设计到了很多本学期没有学透的内容,如:函数的调用和结构体的定义和使用,通过这次设计让
21、我对这些内容有了进一步的了解,重要的是我能过使用这些东西编一个使用的程序。总而言之,这次高级语言课程设计给了我一次很大的锻炼机会,我相信我以后会很好的提高我的计算机水平,它代表着先进的科技水平, 它在很多方面都有所应用,所以我会更加努力的学习它,并进一步丰富我的知识, 提高我的编程能力。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 43 页 - - - - - - - - - 课程设计说明书No.16沈阳大学5 参考文献1 谭浩强, C语言程序设计教程,清华大学出版社
22、,2005,7:161-166 2 苏小红, C语言大学使用教程,电子工业出版社,2004,7:89-92 3 王敬华,林萍,张维,语言程序设计M ,北京:清华大学出版社, 2003.4:251-351 4 朱三元,计算机应用与软件J ,2004(02):18-20名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 43 页 - - - - - - - - - 课程设计说明书No.17沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
23、- - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 43 页 - - - - - - - - - 课程设计说明书No.18沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 43 页 - - - - - - - - - 课程设计说明书No.19沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 43
24、 页 - - - - - - - - - 课程设计说明书No.20沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 43 页 - - - - - - - - - 课程设计说明书No.21沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 43 页 - - - - - - - - - 课程设计说明书No.22沈阳大学名师资料总结 - -
25、-精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 43 页 - - - - - - - - - 课程设计说明书No.23沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 43 页 - - - - - - - - - 课程设计说明书No.24沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师
26、精心整理 - - - - - - - 第 24 页,共 43 页 - - - - - - - - - 课程设计说明书No.25沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 43 页 - - - - - - - - - 课程设计说明书No.26沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 43 页 - - - - - - - -
27、 - 课程设计说明书No.27沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 27 页,共 43 页 - - - - - - - - - 课程设计说明书No.28沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 28 页,共 43 页 - - - - - - - - - 课程设计说明书No.29沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - -
28、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 29 页,共 43 页 - - - - - - - - - 课程设计说明书No.30沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 30 页,共 43 页 - - - - - - - - - 课程设计说明书No.31沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
29、 第 31 页,共 43 页 - - - - - - - - - 课程设计说明书No.32沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 32 页,共 43 页 - - - - - - - - - 课程设计说明书No.33沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 33 页,共 43 页 - - - - - - - - - 课程设计说明书No.34沈阳大
30、学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 34 页,共 43 页 - - - - - - - - - 课程设计说明书No.35沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 35 页,共 43 页 - - - - - - - - - 课程设计说明书No.36沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -
31、- - - - - 名师精心整理 - - - - - - - 第 36 页,共 43 页 - - - - - - - - - 课程设计说明书No.37沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 37 页,共 43 页 - - - - - - - - - 课程设计说明书No.38沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 38 页,共 43 页 - -
32、 - - - - - - - 课程设计说明书No.39沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 39 页,共 43 页 - - - - - - - - - 课程设计说明书No.40沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 40 页,共 43 页 - - - - - - - - - 课程设计说明书No.41沈阳大学名师资料总结 - - -精品资料欢
33、迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 41 页,共 43 页 - - - - - - - - - 课程设计说明书No.42沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 42 页,共 43 页 - - - - - - - - - 课程设计说明书No.43沈阳大学名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 43 页,共 43 页 - - - - - - - - -