您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 纯C语言编写图书管理系统WORD文档bbszp
《C语言程序设计》课程设计实验报告题目:图书管理系统专业:班级:姓名:成绩:指导教师:完成日期:年月日2目录第一章系统功能模块结构图………………………………………………….31.1系统调用的函数…………………………………………………..31.2图书管理系统模块………………………………………………..31.3管理系统数据流图……………………………………………….41.4系统主菜单……………………………………………………..51.5图书查询……………………………………………………..51.6借阅图书……………………………………………………..51.7管理系统……………………………………………………..51.8还书………………………………………………………….61.9退出系统……………………………………………………..6第二章图书管理系统的结构………………………………………………….62.1主函数流程图………………………………………………..62.2程序文件存储设计………………………………………………..7第三章图书管理系统测试…………………………………………………..73.1实验结果……………………………………………………………………7第四章实验体会………………………………………………….……………74.1体会与总结……………………………………………………..7参考文献………………………………………………………………………………….8附录:源代码………………………………………………………………………………831系统功能模块结构图本图书管理系统由查阅图书(chabook),借阅图书(lenbook),系统管理(图书管理,借书卡管理),还书(huanbook)。四个大的菜单模块组成,其总体结构图如下:图1图书管理系统总体结构图1.1系统调用的函数函数名称函数功能Chabook()图书查阅模块函数Lenbook()图书借阅函数Huanbook()还书函数Findbook()按书名查找函数Addbook()增加图书函数Delbook()删除图书函数Changebook()修改图书函数Bookcount()图书统计函数Addcar()增加卡号函数Delcar()删除卡号函数Lendcount()借书统计函数Carcount()卡号统计函数查阅图书模块借阅图书模块系统管理模块还书系统模块图书管理系统主菜单4图2系统调用函数表1.2图书管理系统功能模块说明:主菜单包括:查阅图书菜单,借阅图书,系统管理菜单,还书。查阅图书菜单:包括按书名查找模块,返回。系统管理菜单:包括图书管理,借书卡管理。图书管理:1.增加图书2.删除图书3.修改图书4.图书统计借书卡管理:1.申请新卡2.删除卡号3.借书统计4.卡号统计1.3图书管理系统的数据流图主菜单查阅图书借阅图书系统管理还书按书名查找输入卡号和要借阅图书的名字图书管理借书卡管理输入卡号与书名还书完毕增加图书删除图书修改图书申请新卡图书统计删除卡号借书统计卡号统计返回退出系统5图3图书管理系统数据流图1.4主菜单直接运行程序,将进入主菜单MainMenu然后按0-4键进入选择。1.5图书查询功能的实现在主菜单中选择“1:chaxunbook”进入图书查询模块,输入1按书名查找,输入0则返回主菜单,1.6借阅图书功能的实现在主菜单中选择“2:jieyubook”,输入卡号与书名即可,否则将提示错误信息,按0键返回1.7管理系统在主菜单中选择“3:guanlixitong”1.7.1增加图书在管理系统中选择“1:Addbook”,然后输入书籍的序号,书名、作者、与借阅状态,即可完成添加图书操作。1.7.2删除图书管理菜单中选择“2:delbook”输入书名,如果存在则自动删除该书籍所有信息,如果不存在系统不做任何改动。1.7.3修改图书资料管理菜单中选择“3:xiugaitushuziliao”输入书名,然后输入新的序号、书名和作者即可完成修改图书操作。1.7.4书籍统计选择“4:shujitongji”即可查看所有图书资料1.7.5(1)申请新卡:在管理菜单中输入:“5:jieshukaguanlisystem”然后选择“1:newcar”,输入卡号,学生姓名,班级。(2)删除卡号:在“jieshukaguanlisystem”中选择“2:delcar”,输入卡号即可删除该卡。(3)借书统计:在“jieshukaguanlisystem”中选择“3:jieshutongji”,可查看所有借出书籍的信息。(4)卡号统计:在“jieshukaguanlisystem”中选择“4:kahaotongji”,查看所有的卡号信息。61.8还书在主菜单中输入“4:huanshu”,然后输入卡号与要还的书名即可。1.9退出在主菜单中输入“0:exit”,2程序结构2.1主函数流程图NN初始化、定义主菜单、分支菜单指针数组及变量程序开始读键盘按键的键值判断键值并弹出对应菜单根据按键执行菜单选项对应的函数从被调用函数中返回并转移退出管理系统用户按了0键吗?Y7图4系统主函数流程图2.2程序的文件存储设计程序数据存取主要由三个文件:book.txt、record.txt、car.txt组成。Book.txt:主要存储图书数据,程序的增加图书、删除图书、查阅图书等功能均是对些文件进行读取操作。Record.txt:借书记录存储文件,主要用来储存书籍的借出与归还信息。Car.txt:学生卡号储存文件。另外在程序运行的时候还增加了一个临时文件book1.txt,它的主要功能是防止因为误操作对源文件book.txt的数据破坏。3实验结果程序基本达到设计要求,由于使用了菜单功能,程序的操作更加直观,一般情况下能正确提示错误信息。但是在测试中也发现软件的一些不足与缺陷,需要进一步修改和维护时予以纠正。总的来说,程序在TC2.0和Win-TC下通过测试。4体会刚开始面对这项任务时,自己就有点无信心,因为这项任务量太大了,而且自己的C语言学得不太好。但后来在老师的指导与同学的帮助与鼓励下,自己翻书本,上网查找和上机实践,逐步地完成了这项作业。通过本次实验,不仅使我所学c语言的知识更加巩固,而且可以使理论与实践相结合,更好的掌握所学到的知识。在编写程序的时候我也发现了自己很多的不足之处,例如在课堂上学的理论知识有的时候很难把它应用到实际程序中,看似一个简单的功能模块往往需要很多知识的融合。在图书管理系统的编写过程中,我也更加的明白了程序刚开始设计时结构与算法的重要性。另外由于编写代码时的一个小失误,导致整个程序无法运行,结果后期花很多的时间去调试,在这里希望大家以此为戒,编写代码的时候一定要细心、谨慎。85参考文献[1]吕凤翥等.C语言程序设计:基础理论与案例.清华大学出版社2005[2]曹衍龙等.C语言实例解析精粹.人民邮电出版社,2005[3]谭浩强.C语言程序设计(第二版).清华大学出版社,20026附录:源程序清单/*华中科技大学,远程与继续教育学院06计算机系*//*图书管理系统,C语言编写*/#includestdio.h#includestring.h#includeconio.h#includestdlib.h#includectype.h#defineSTACK_INIT_SIZE10#defineOK1#defineTRUE1#defineFALSE0#defineERROR0structstudent/*定义student结构,储存学生所借出的书籍信息*/{intcarnum;charlendbook[10];}student[1000];structbook/*定义书的类型*/{intbooknum;charbookname[10];charbookcreat[10];intturefalse;/*该变量为判断书籍是否借出*/}book[1000];structcar/*定义借书卡的数据类型*/{intcarnum;charstudentname[10];intstudentclass;}car[100];9main()/*…………主菜单开始…………*/{charch1,ch2,ch3,ch4,ch5;do{clrscr();printf(**************Welcometo****************\n);/*主菜单*/printf(**************MainMenu**************\n);printf(1:chabook\n);/*查询图书*/printf(2:jieyuebook\n);/*借阅图书*/printf(3:guanlixitong\n);/*管理系统*/printf(4:huanshu\n);/*还书*/printf(0:exit\n);printf(Pleaseinput0--4\n);scanf(%s,&ch1);switch(ch1){case'1':chabook();break;case'2':lendbook();;break;case'3':{do{clrscr();printf(****************WelcometoManagermenu****************\n);/*管理菜单*/printf(1:addbook\n);/*添加图书*/printf(2:delbook\n);/*删除图书*/printf(3:xiugaitushuziliao\n);/*修改图书资料*/printf(4:shujitongji\n);/*书籍统计*/printf(5:jieshukaguanlisystem\n);printf(0:Return\n);printf(Pleaseinput0--5\n);scanf(%s,&ch2);switch(ch2){case'1':addbook();break;case'2':delbook();break;case'3':changebook();break;case'4':bookcount();getch();break;case'5':{do{clrscr();printf(****************jieshukaguanlisystem****************\n);/*借书卡管理菜10单*/printf(1:newcar\n);/*申请新卡*/printf(2:delcar\n);/*删除卡号*/printf(3:jieshutongji\n);/*借书统计*/printf(4:kahaotongji\n);/*卡号统计*/printf(0:Return\n);printf(Pleaseinput:0--4\n);/*请输入0-4,其它错误*/scanf(%s,&ch4);switch(ch4){case'1':addcar();break;case'2':delcar();break;case'3':lendcount();break;case'4':carcount();break;case'0':break;default:printf(Error\n);getch();break;}}while(ch4!='0');}break;case'0':break;default:printf(Error\n);getch();break;}}while(ch2!='0');}break;case'4':huanbook();break;case'0':break;default:printf(Error\n);getch();break;}}while(ch1!='0');}chabook()/*…………查询图书…………*/{charch5;do{printf(****************Welco
本文标题:纯C语言编写图书管理系统WORD文档bbszp
链接地址:https://www.777doc.com/doc-5480411 .html