数据结构图书管理系统课程设计报告.doc
《数据结构图书管理系统课程设计报告.doc》由会员分享,可在线阅读,更多相关《数据结构图书管理系统课程设计报告.doc(12页珍藏版)》请在咨信网上搜索。
1、一、设计题目与要求【问题描述】设计一个计算机管理系统完成图书管理基本业务。【基本要求】(1) 每种书的登记内容包括书号、书名、著作者、现存量和库存量;(2) 对书号建立索引表(线性表)以提高查找效率;(3) 系统主要功能如下:采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;归还:注销对借阅者的登记,改变该书的现存量.二、小组分工小组成员:小组分工:图书初始化、新书入库、登记读者信息、文件保存借书系统、还书系统图书信息查询、读者信息查询三、需求分析图书管理系统共需要八个模块
2、,分别是1图书初始化、2新书入库、3添加读者信息、4借书模块、5还书模块、6查询图书信息、7查询读者信息、8退出。我负责其中的四个模块,如下所示:1) 图书初始化输入图书的一些信息,编号、作者、书名、数量,使有一定的库存。2) 新书入库新书采编入库,输入编号后如果有次数只需输入数量,没有则继续输入书名、作者、数量。3) 添加读者信息读者信息初始化,输入读书证号和姓名,只有输入书证号和姓名才能进行借书还书4) 退出和文件保存退出读书管理系统并保存读者和图书信息.图书管理系统图书管理模块理读者管理模块借阅操作模块查询操作模块借书系统读者信息查询图书信息查询输入读者信息还书系统采编入库初始化图书信息
3、四、概要设计图书信息和读者信息都采用结构体类型保存.图书信息里面包括:图书编号、图书名称、作者、现有量、库存量、指向下一节点的指针。读者信息里面包括:读者编号、读者姓名、借书数量、可借图书数量、指向下一节点的指针.所有图书和读者都分别以链表的形式存储,并以编号为唯一主键。采用链表形式便于数据的添加与删改。主要的操作为:系统初始化,图书入库,读者信息登记,图书信息和读者信息文件的保存。五、详细设计数据结构的定义:图书信息:typedef struct bookchar book_num10;char book_name20;char book_writer10;int book_xy;int b
4、ook_kc;struct book next;BK;读者信息:typedef struct readerchar reader_num10;char reader_name10;int right;BO borrowMax;struct reader next;RD;算法描述:进入系统后首先进行图书初始化,输入图书的信息。开始1)初始化输入图书编号、名称、作者和图书数量进入系统初始化之后,进入系统,显示功能列表,可选择任意系统,但在借书之前先要输入读者信息。开始输入功能所对应的数字输入的数字小于0大于6错误!请重新输入执行所选功能采编入库 2)采编入库录入图书信息判断是否有此图书否是在原有的
5、纪录上加上现有的图书数量向系统中加入新纪录3)输入读者信息登记读者输入读者信息:读者书证号判断是否存在此读者结束否 向系统中添加新记录是重新输入读者信息5) 退出和文件保存退出系统保存文件判断是否保存成功错误!请重新登陆系统退出系统是六、程序源代码includestdio.h#include 6) printf(”n错误!请重新输入:”); else break;return dm; void Menu_select()/主菜单选择函数/for(;;) switch(Menu()) /功能选择/ case 0: system(cls); Save();printf(”nnt文件保存成功!n”)
6、; printf(”nnt欢迎下次使用本系统!n); getch(); exit(0); case 1:Insert_New_Book();break; case 2:add_reader();break; default:printf(”n错误!); exit(0);void Init() /初始化/BK p0;printf(”n图书初始化开始,请输入图书信息n包括编号。书名。数量n);p0=(BK*)malloc(sizeof(BK));h_book=p0; printf(n请输入图书信息:n”); printf(”图书编号:”); /*输入图书编号(唯一)*/ scanf(s,p0-bo
7、ok_num); printf(图书名称:”); /*输入图书名称*/ scanf(%s”,p0-book_name);printf(图书作者:); /输入图书作者/ scanf(s”,p0book_writer); printf(”图书数量:); /输入图书数量/ scanf(”%d”,p0book_kc); p0-book_xy=p0book_kc; /*开始时图书现有量和库存量相等/ p0next=NULL; printf(n图书信息初始化完毕!按任意键继续下一步操作n); getch(); system(cls);void Insert_New_Book()/新书入库/BK p,*p0
8、,*p1; p=p1=h_book;printf(n新书入库模块n”);printf(n请输入新书信息n包括书号。书名。数量n);p0=(BK )malloc(sizeof(BK)); printf(”图书编号:”); scanf(”s”,p0-book_num); while(strcmp(p0-book_num,p1book_num)!=0&p1next!=NULL) p1=p1next; if(strcmp(p0book_num,p1book_num)=0) /此处分两种情况,若图书编号存在,则直接进库,只须输入书的数量/ printf(”n此编号图书已存在!直接入库!n”); prin
9、tf(”图书数量:”); scanf(%d”,p0book_kc); p1-book_kc+=p0book_kc; p1book_xy+=p0book_kc; else/若不存在,则需要输入其他的信息,然后在进行插入操作*/ printf(”图书名称:”); scanf(s”,p0book_name);printf(”图书作者:”); scanf(”s”,p0-book_writer); printf(”图书数量:”); scanf(”d”,&p0-book_kc);/库存数量while(p-next) p=p-next; if(h_book=NULL) h_book=p0; /*此处分两种情
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 图书 管理 系统 课程设计 报告
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。