《图书管理程序+课程设计报告(C语言)(共58页).docx》由会员分享,可在线阅读,更多相关《图书管理程序+课程设计报告(C语言)(共58页).docx(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 高级语言课程设计图书登记管理程序题 目:班 级:软件5班学生学号: 4 学生姓名:*指导老师: *提交时间:*成 绩:评分项目得分功能完整性(30分)界面美观性(10分)设计合理性(10分)创新性(10分)答辩表现(40分)评语:华南农业大学 信息学院图书登记管理程序分析1系统分析1.1问题描述图书登记管理程序能够帮助图书管理员切实高效的登记管理图书信息,管理员将全部图书信息存储在系统中,系统能够提示明显信息,从而管理员能对新增,丢失,修改,借阅的图书信息和借书用户信息做必要的登记,并且该系统设有密码,能够一定程度上阻止无关人员操作系统。1.2系统功能分析系统主要分
2、成两大功能,图书管理和用户管理。在图书管理方面,分为增加新图书,删除图书,修改图书信息,查询图书信息,统计图书信息,借阅图书,归还图书等七大功能。在查询图书信息功能上,又细分为按ISBN号,作者,名称,出版社,出版日期,图书类别查询。在统计图书信息功能上,又细分为按ISBN号范围,出版日期范围,价格范围查询。在用户管理方面,分为查询用户信息,修改用户信息,增加用户,删除用户,修改图书管理密码等五大功能。1.3开发平台及工具介绍 本系统主要利用C语言的基本知识,使用Microsoft Visual C+ 软件来编写程序代码,该软件适合初学者使用,能够帮助程序员快速查找出错误,给出明确提示,从而更
3、加高效的开发出图书登记管理系统。2系统设计2.1系统总体结构设计系统程序中图书信息,用户信息,密码信息都是以结构体的形式表示,并且每一个结构体都分别嵌套在三个链表中,从而能够实现信息的增减功能。2.2系统各个功能模块及功能模块之间关系设计 首先系统功能模块分别有创造图书信息、用户信息、密码信息模块。读取图书信息、用户信息、密码信息模块。保存图书信息、用户信息、密码信息模块。输入图书信息、用户信息、密码信息模块。增加图书信息、用户信息模块。删除图书信息、用户信息模块。修改图书信息、用户信息、图书管理密码模块。查询图书信息、用户信息模块。统计图书信息模块。借阅图书模块,归还图书模块。输出图书信息、
4、用户信息模块。 各个模块之间相互存在相互调用的关系,大模块调用小模块,层层调用。2.3数据存储的设计(文件等) 图书信息,用户信息,密码信息分别存储在三个文件上。实现信息从文件写入链表,信息从链表存储在文件中。2.4界面设计 程序的各项功能在程序运行时,以菜单的方式执行。各个菜单中都有明确的提示,使管理员轻松的使用本系统。在主菜单中选择所需功能,再在各二级菜单中选择,以此类推,直至选到所需要的功能。当不需要当前菜单时,还可以返回上一级菜单,重新进行选择,并且系统设置清除界面功能,避免已经没有的信息界面仍然出现。3系统实现 模块的流程图如下: Y退出系统C输入密码进入图书登记程序系统A判断是否存
5、在存储密码,图书,用户信息的文件B 创造存储信息的文件 NND 选择操作内容管理图书信息管理用户信息E 输入管理图书内容F 输入管理用户内容判断输入内容1判断输入内容2判断输入内容1增加图书修改图书统计图书归还图书借阅图书查询图书删除图书按图书类别按ISBN号查询图书按作者按名称按出版社按出版日期统计图书按出版日期按号判断输入内容查询用户信息修改用户信息增加用户化删除用户修改密码按价格部分关键程序代码如下:headss=readFiless(headss);if(!headss)createFiless();headss=readFiless(headss);head=readFile(hea
6、d);if(!head)createFile();head=readFile(head);heads=readFiles(heads);if(!heads)createFiles();heads=readFiles(heads);:void createFile() /*创造图书信息函数*/book data;FILE *fp;if(fp=fopen(book.dat,wb)=NULL)printf(存储图书信息的文件未找到!n);exit(0);printf(请输入图书信息,当输入足够图书时,以ISBN号为0结束!n);readNode(&data);while(strcmp(data.IS
7、BN,0)!=0)fwrite(&data,sizebook,1,fp);readNode(&data);fclose(fp);void createFiles() /*创造用户信息函数*/people datas;FILE *fps;if(fps=fopen(people.dat,wb)=NULL)printf(存储用户信息的文件未找到!n);exit(0);printf(请输入用户信息,当注册足够用户时,以用户号码为0结束!n);readNodes(&datas);while(datas.num)fwrite(&datas,sizepeople,1,fps);readNodes(&data
8、s);fclose(fps);void createFiless() /*创造密码函数*/access datass;FILE *fpss;if(fpss=fopen(access.dat,wb)=NULL)printf(存储密码信息的文件未找到!n);exit(0);readNodess(&datass);fwrite(&datass,sizeaccess,1,fpss);fclose(fpss);:int enter(struct nodess *headss) /*进入系统函数*/struct nodess *q=headss;char codes80;createprints();sc
9、anf(%s,&codes);if(strcmp(q-datass.code,codes)=0)return 1;elseprintf(输入密码错误,系统已退出!n);return 0;:switch(choice)case 1: heads=readFiles(heads); head=bookmenu(head,heads); break;case 2: heads=readFiles(heads); heads=peoplemenu(heads,head,headss); break;case 0: break;default :printf(输入错误,请再输入一遍!n);:switch
10、(choice)case 1: printf(请输入你要增加图书的信息!n); readNode(&data); head=InsertOrder(head,data); break;case 2: printf(请输入你要删除图书的ISBN号!n); scanf(%s,&ISBNS); head=Delete(head,ISBNS); break;case 3: printf(请输入你要修改图书的ISBN号!n); scanf(%s,&ISBNS); head=correct(head,ISBNS); break;case 4: searchManage(head); break;case
11、5: statist(head); break;case 6: printf(请输入你要借阅图书的ISBN号!n); scanf(%s,&ISBNS);heads=readFiles(heads); head=borrowbook(head,ISBNS,heads); break; case 7: printf(请输入你要归还图书的ISBN号!n); scanf(%s,&ISBNS);heads=readFiles(heads); head=returnbook(head,ISBNS,heads); break;case 0: system(cls); break; default : pri
12、ntf(输入错误,请再输入一遍!n); break;:switch(choice)case 1: printf(请输入你要查询用户的号码!n); scanf(%lf,&nums);searchManages(heads,nums,head);break;case 2: printf(请输入你要修改用户的号码!n); scanf(%lf,&nums);heads=corrects(heads,nums);break;case 3: printf(请输入你要增加用户的号码!n); readNodes(&datas); heads=InsertOrders(heads,datas);printf(增
13、加用户成功!n); break; case 4: printf(请输入你要删除用户的号码!n); scanf(%lf,&nums); heads=Deletes(heads,nums); break;case 5: headss=correctss(headss); break;case 0: system(cls); break; default : printf(输入错误,请再输入一遍!n); break;4系统测试4.1模块测试(两数值空格代表回车)增加图书:输入978-7-89486-953-7 zhongguojindaishigangyao wangyang gaodengjiao
14、yuchubanshe 19.5 5 0 , 预期输出增加图书成功!删去图书:978-7-89486-953-2 ,预期输出删除图书成功!修改图书信息:输入978-7-89486-953-3 978-7-89486-953-3 Cyuyanchengxusheji zhulihua renminyoudianchubanshe 32 3 0,预期输出修改成功!查询图书信息:按ISBN号查询:978-7-89486-953-5 预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-5 书名:ITjishu 作者:weitian 出版社:ribenchubansh
15、e 出版日期: 价格:20 图书类型:自然科学 图书状态:0 共有1本!按作者查询:weitian ,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-5 书名:ITjishu 作者:weitian 出版社:ribenchubanshe 出版日期: 价格:20 图书类型:自然科学 图书状态:0 共有1本!按名称查询:输入duxueyi,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-2 书名:duxueyi 作者:liuxizhen 出版社:qinghuadaxuechubanshe 出版日期: 价格:30 图书类型
16、:综合性图书 图书状态:0 共有1本!按出版社查询:输入gaodengjiaoyuchubanshe,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-4 书名:makesizhuyigailun 作者:chenchen 出版社: gaodengjiaoyuchubanshe 出版日期: 价格:17 图书类型:马列毛思想 图书状态:0 共有1本!按出版日期查询:输入,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-3 书名:Cyuyan 作者:zhulihua 出版社: renminyoudianchubanshe
17、出版日期: 价格:32 图书类型:社会科学 图书状态:0 共有1本!按图书类别查询:输入1,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-4 书名:makesizhuyigailun 作者:chenchen 出版社: gaodengjiaoyuchubanshe 出版日期: 价格:17 图书类型:马列毛思想 图书状态:0 共有1本!统计图书信息:按ISBN号统计:输入978-7-89486-953-2 978-7-89486-953-4,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-2 书名:duxueyi 作
18、者:liuxizhen 出版社:qinghuadaxuechubanshe 出版日期: 价格:30 图书类型:综合性图书 图书状态:0 满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-3 书名:Cyuyan 作者:zhulihua 出版社: renminyoudianchubanshe 出版日期: 价格:32 图书类型:社会科学 图书状态:0 满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-4 书名:makesizhuyigailun 作者:chenchen 出版社: gaodengjiaoyuchubanshe 出版日期: 价格:17
19、图书类型:马列毛思想 图书状态:0 共有3本!按出版日期统计:输入 ,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-1 书名:shitingshuo 作者:liuxizhen 出版社:qinghuadaxuechubanshe 出版日期: 价格:30 图书类型:综合性图书 图书状态:0 满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-2 书名:duxueyi 作者:liuxizhen 出版社:qinghuadaxuechubanshe 出版日期: 价格:30 图书类型:综合性图书 图书状态:0 满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-3 书名:Cyuyan 作者:zhulihua 出版社: renminyoudianchubanshe 出版日期: 价格:32 图书类型:社会科学 图书状态:0 共有3本!按价格统计:输入18 20,预期输出为:满足您查找条件的图书信息为: ISBN编号:978-7-89486-953-5 书名:ITjishu 作者:weitian 出版社:ribenchubanshe 出版日期: 价格:20
限制150内