图书管理系统说明书(共32页).doc
《图书管理系统说明书(共32页).doc》由会员分享,可在线阅读,更多相关《图书管理系统说明书(共32页).doc(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上C语言程序设计课程设计说明书图书借阅管理系统指导教师:张银霞设计者: 翟祥 闫妍 郝显微 岳俊专业班级:化工092设计时间:2010年10月-12月C语言程序设计课程设计任务书专业班级:化工092设计题目:图书管理系统一、已知技术参数或设计前提1、图书馆有各种图书200万册。2、每种图书都有书号、书名、作者(译者)、出版社、定价这些基本信息。3、借书卡记录有借阅者的卡号、姓名、班级。二、设计内容及要求图书借阅管理系统(1)输入:将书的序号,书名,作者,出版日期,单价储存到书文件里。(2)删除:将没有意义或破损的书在文件里删除。(3)修改:可输入书号或书名进行查询,找到
2、以后对图书错误的信息进行修改。(4)查询:若按书号查询,输入书号以后,屏幕上会出现书的详细信息,包括书的序号,书名,作者,出版日期,单价。若按书名查询,输入后,屏幕上的显示结果也是书的详细信息。 (5)办卡:将新卡储存到卡文件里。(6)退卡:将要删除的卡从卡文件里删除。(7)借书时,屏幕上显示请输入你的卡号,请输入你要借阅的书的书号,若该书已被借出,屏幕上显示 对不起,此书有人借出,请借其他书。若该书没有借出,则直接显示借书完毕,按任意键返回, (8)还书时,输入你要还的书的书号,输入后屏幕上显示还书完毕,按任意键返回。三、课程设计工作计划1、确定题目,成立设计小组,做用户需求分析(10月22
3、日)2、查阅资料,进行问题分析,制定方案,确定成员分工(10月22日-25日)3、根据方案编写程序并进行调试(10月26-11月26日)4、撰写设计说明书,完成设计(11月27日-12月5日)5、提交设计内容,答辩()四、相关教材及参考书目1谭浩强.C程序设计.清华大学出版社,2005年2邓文新、张宏烈.C语言程序设计方法.哈尔滨工业大学出版社,2004年3美Brian W.Kernighan,Dennis M.Ritchie .C程序设计语言.机械工业出版社,2003年 4Kenneth A.Reek. C和指针. 人民邮电出版社,1998年5 Perter Van Der LinDen.
4、C专家编程. 人民邮电出版社,2004年 指导教师签字: 系主任 签字: 年 月 日图书借阅管理系统一、需求分析当今社会知识逐渐占据主导地位,人们越来越需要知识,图书馆书店逐渐成为人们了解知识掌握知识的窗口,因此更需要有效的管理图书,以便人们方便查阅。许多的大学图书馆里,图书管里对管理人员来说是非常麻烦的事情,而且有些落后的地区,图书管理还是靠人工管理,针对这些现象,我们设计此系统,希望能够为他们提供一些帮助。二、系统的软硬件环境1、硬件环境 CPU Intel 1.80GHz 内存1G 硬盘80G2、软件环境 Windows XP Microsoft Visual C+6.0三、系统模块功能
5、:1、总体功能实现图书信息的全面管理,主要是对图书书名,书号的管理。通过此程序能够更方便的处理图书信息,如图1所示。图书管理系统输入图书记录删除图书记录修改图书记录查询书记录统计模块读者管理模块图书借阅模块图1 图书借阅管理系统程序功能框架图2、模块功能(1)输入模块该模块是实现对图书按照书号、书名、作者、出版日期、单价的录入并保存到文件中(2)删除模块该模块实现按图书编号对图书信息的删除。(3)修改模块该模块实现按图书号或书名对图书信息的修改。(4)查询模块实现按图书编号和书名查询每种图书的信息(5)统计模块统计图书管现有的图书的数量。(6)读者管理模块该模块实现添加读者卡的信息和删除读者卡
6、的信息。(7)借阅模块实现图书的借阅和归还。四 程序设计分析1、 数据结构程序定义了两个结构体变量emp 100,card 500结构体成员包括图书序号no、书名mz、作者 zuozhe、出版日期nl、单价salar、卡号cardnum、读者姓名readername、班级classnum、借书日期lenddate。struct book char no5;char mz10;char zuozhe10;int nl;int salar; empNUM,newemp;struct card int cardnum; char readername10; int classnum; int boo
7、knum; char lenddate10; card500;2、 模块设计分析(1)主函数 用printf函数输出相关信息,然后用 while(1)语句执行循环体,用scanf函数获取命令,用if判断操作是否正确,用switch语句执行函数的调用。(2)图书信息输入由input()函数实现,用fopen语句打开文件通过if来判断文件是否存在,用for语句执行循环体,用scanf函数获取图书各项信息,定义一个整形变量n,用来记录输入图书的本数,当这些图书信息输入完毕后,接受到命令0跳出循环体。利用fwrite函数将录入的数据逐一写到文件emp.txt中,再用fclose函数关闭文件emp.tx
8、t。(3)删除模块 函数先定义了整形变量x,然后用 while(1)语句执行循环体,用scanf函数获取命令,用if判断操作是否正确,用switch语句执行函数的调用。用fopen函数按照rb的方式打开已经保存好的文件“emp.txt”, 然后用printf语句输出删除前的图书记录,再用for语句和fread函数逐条读出文件中的数据,然后用scanf语句输入要删除的书的书号,并用字符串比较函数strcmp判断是否有此图书信息,若找到此图书信息,删除后,再用fclose函数关闭文件emp.txt再一次打开emp文件用 fwrite函数和for循环将删除后的图书记录empi.no,empi.mz,
9、empi.zuozhe,empi.nl,empi.salar;重新写入文件emp中。然后关闭文件。(4)修改模块函数先定义了整形变量x,然后用 while(1)语句执行循环体,用scanf函数获取命令,用if判断操作是否正确,用switch语句执行函数的调用。在调用modi_num()函数中定义文件指针*fp和整形变量i,然后按照rb+的方式打开已经保存好的文件“emp.txt”, 然后用for语句和fread函数逐条读出文件中的数据,然后用scanf语句输入要修改的图书序号,并用字符串比较函数strcmp判断是否有此图书信息,若找到此商品信息并用scanf函数输入此商品修改后的信息。修改成功
10、后再用fwrite函数将商品信息再次保存到文件“emp.txt”中。最后用fclose函数关闭文件“emp.txt”。(5)查询模块 函数先定义了整形变量x,然后用 while(1)语句执行循环体,用scanf函数获取命令,用if判断操作是否正确,用switch语句执行函数的调用。在调用search_num()函数中定义文件指针*fp和整形变量i,然后按照rb的方式打开已经保存好的文件“emp.txt”,然后用for语句和fread函数逐条读出“emp.txt”文件中的信息,然后用scanf语句输入要查询的书的序号,并用字符串比较函数strcmp判断是否有此图书信息,若找到此商品信息则通过pr
11、intf语句输出图书信息。然后关闭文件。调用search_mz(),原理同上。(6)统计模块用fopen函数按照rb方式打开文件“emp.txt”,然后用fread函数读出文件中的信息,再用for语句输出读出图书各项信息,并用i控制循环,对要统计的图书总数量进行求累计和,再用printf函数输出图书的总数量,fclose函数关闭文件“emp.txt”。(7)读者信息录入由addcard()函数实现,用fopen语句打开文件通过if来判断文件是否存在,用for语句执行循环体,用scanf函数获取学生各项信息,当某种信息输入完毕后,如果要继续录入下一个卡则按y,按n则信息录入已结束接受到命令跳出循
12、环体。利用fwrite函数将录入的数据逐一写到文件card.txt 中,再用fclose函数关闭文件card.txt 。(8)读者信息删除用fopen函数按照rb的方式打开已经保存好的文件“card.txt”, 然后用printf语句输出删除前的卡记录,再用for语句和fread函数逐条读出文件中的数据,然后用scanf语句输入要删除的卡号,并与文件中的卡号比较,判断是否有此卡信息,若找到此卡信息,删除后,再用fclose函数关闭文件card.txt再一次打开card文件用 fwrite函数和for循环将删除后的卡记录cardi.cardnum,cardi.readername, cardi.
13、classnum;重新写入文件card中。然后关闭文件。(9)借阅图书先定义文件指针和整形变量以及时间变量,用while(1)来执行循环体 。然后按照rb+的方式打开已经保存好的文件“card.txt”,然后用for语句和fread函数逐条读出“card.txt”文件中的信息,然后用scanf语句输入要借书者的卡号,并用字符串比较函数strcmp判断是否有此卡号信息,若找到此信息则通过scanf语句得到借书的图书编序号。然后按照rb的方式打开已经保存好的文件“emp.txt”,然后用for语句和fread函数逐条读出“emp.txt”文件中的信息,并用字符串比较函数strcmp判断是否有此图书
14、信息,若找到该图书信息,则借书成功,并且将该书信息写如到lend.txt文件中,用printf函数显示借阅成功和借阅时间,最后关闭文件。(10)归还图书先定义文件指针、整形变量以及时间变量和字符变量,用while(1)来执行循环体。然后按照rb的方式打开已经保存好的文件“lend.txt”,然后用for语句和fread函数逐条读出“lend.txt”文件中的信息,然后用scanf语句输入要归还的图书序号,并用字符串比较函数strcmp判断是否有此图书信息,若找到此信息。则归还成功,用printf函数显示归还成功和归还时间。五、使用说明1、启动系统首先将光盘插入光驱,待光盘转动后打开,可以看到里
15、面包含四部分:图书借阅管理系统.c、emp.txt、card.txt、图书借阅管理系统.exe、图书借阅管理系统说明书。在我的电脑C盘中新建一个文件夹,命名为图书管理系统,将图书管理系统.c、emp.txt、card.txt、图书管理系统.exe。一起复制到其中。在安装有Microsoft Visual C+6.0的环境下,双击打开c盘中名为图书管理系统的文件夹,然后双击图书管理系统.c,点击上方按钮编译程序,接着点击按钮运行程序即可进入系统主界面,如图2所示。图2 图书管理系统运行主菜单使用者可以根据需要选择相应的键进行操作。2、输入功能在图2界面下选择数字1可进入输入功能界面,屏幕显示提示
16、信息,使用者逐渐输入“输入图书数:”“输入格式: 书号 书名 作者 出版日期 单价”后,系统会自动将输入的图书信息保存到文件中,如图3所示。图3 输入图书信息运行界面3、 删除功能在图2界面下选择数字2可进入删除功能界面,这时出现删除子菜单,要求作者输入要删除的书号,输入书号后,程序开始执行删除功能,如图4、5所示。 图4 删除图书信息记录运行界面图5 删除图书信息记录运行界面4、修改功能在图2界面下选择数字3可进入修改功能界面,此程序模块主要于方便使用人员进行录入的图书记录的错误的修改,使用人员选择修改的方式,直接输入图书号,按照提示就可以成功修改图书记录,选择“0”,则程序返回主菜单,如图
17、6、7、8所示。图6 修改图书信息运行界面若选择1图7 修改图书信息运行界面若选择2图8 修改图书信息运行界面5、查询功能在图2界面下选择数字4可进入查询功能界面,此程序模块主要于方便使用人员进行查询图书,使用人员选择查询的方式,直接输入书号或书名,按照提示就可以成功查询图书,选择“0”,则程序返回主菜单,如图9、10、11所示。按书号查询图9 查询图书信息运行界面按书名查询图10 查询图书信息运行界面6、统计功能 在图2界面下选择数字5可进入统计功能界面,该功能方便图书管理者整理图书馆里的藏书,如图7所示。图11 统计图书信息运行界面7、读者管理功能在图2界面下选择数字6可进入读者管理功能界
18、面,使用者按照指示进行读者卡的办理和删除,然后系统将录入的卡记录自动保存到相应的文件中,如图12、13、14所示。图12 读者管理运行界面图13 读者管理运行界面进入读者管理程序的删除读者卡功能后,会显示删除子菜单,如图9所示。图14 读者管理运行界面8、借阅管理功能在图2界面下选择数字7可进入借阅功能界面,使用者按照指示进行借阅图书和归还图书,如图15、16、17、18、19、20所示。图15 图书借阅运行界面图16 图书借阅运行界面输入卡号后,和图书编号后,图17 图书借阅运行界面图18 图书借阅运行界面图19 图书借阅运行界面然后输入归还图书的编号图20 图书借阅运行界面六、结束语通过本
19、次课程设计,我们学到了不少东西,最重要的是:我们真正的体会到c语言在实际生活中的作用,也深刻体会到了它带来的方便快捷。在设计过程中使我们学会了分工和合作。同时也使我们更加懂得了团队协作的重要性!就拿我们来说吧,在设计之前,脑中一片空白,根本不知道从哪里做起,最后经过讨论,还是先查资料充实自己最重要,所以我们四个人都去找资料了,通过不断的看书,和在网上看和我们相似的程序,我们终于明白该从哪里做起了,找到资料后,又一起讨论,分析,选材。经过大家的一起努力,终于将程序设计好了。美中不足的就是,本程序还处于初级阶段的图书借阅管理功能中,只实现了对图书的录入、删除、修改、查询、基本借阅等简单功能,不一定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 说明书 32
限制150内