网站大量收购独家精品文档,联系QQ:2885784924

数据结构课程设计报告-图书馆管理系统.docx

数据结构课程设计报告-图书馆管理系统.docx

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
广东某某学院 《数据结构课程设计》 题 目: 图书馆管理系统 学 号: 姓 名: 年 级: 学 院: 专 业: 指导教师: 目录 一、问题描述与基本要求 1.1问题描述 1.2基本要求 二、数据结构的设计 2.1数据结构的选择 三、软件模块结构图 3.1大体模块关系图 3.2各模块具体分析 四、程序流程图 五、源程序 六、调试分析 6.1程序错误修改及完善的过程 6.2最终程序所有功能运行结果 6.3测试数据 七、用户使用手册 八、心得体会 一、问题描述与基本要求 1.1问题描述 设计一个计算机管理系统完成图书管理基本业务。 1.2基本要求 1、每种书的登记内容包括书的编号、书名、著作者、现存量、库存量、书证号和归还日期。 2、建立空链表,以提高查找效率 3、系统功能如下: 图书入库:新购一种书,确定书号后,登记到图书账目表中,如果表中已有,则只将库存量增加; 借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量; 归还:注销对借阅者的登记,改变该书的现存量。 二、数据结构设计 2.1数据结构的选择 用单链表的结构,通过编写相应功能函数来实现建立新结点、删除结点、修改结点中数据域的内容、输出结点数据域中的内容等功能。 2.2单链表的定义 先定义单链表结点的数据域,数据域包括书的编号、书名、作者、现存量、库存量、书证号和归还日期;链表结点包括结点数据域和结点链域,最后再定义指向链表结点的指针。以下为单链表的相关定义: typedef struct bookdata//定义结点数据域 { int id;//书的编号 char title[15];//书名 char author[6];//作者 int count;//现存量 int stock;//库存量 char figure[20];//书证号 char deadline[10];//归还时期 }bookdata; typedef struct node//定义链表结点 { bookdata Data;//结点数据域 struct node *next;//结点链域 }booknode; typedef booknode *booklist;//指向链表结点的指针 2.3重要函数的定义及说明 1、void initlist(booklist l)//建立空链表 2、void insertlist(booklist l)//插入链表结点,实现登陆功能(需要输入书的编号,以确定登陆书名) 3、void deletelist(linklist l)//删除链表结点,实现删除功能(需要输入书的编号,以确定删除的书名) 4、void find(booklist l)// 查找书的编码,实现查找功能(需要输入书的编号,以确定查找的书名) 5、void lend(booklist l)//借阅图书,实现借阅功能(需要输入书的编号,以确定借阅的书名) 6、void dele(booklist l)//删除录入借书的信息,实现删除录入借书的功能(需要输入书的编号,以确定删除录入的书名) 7、void add(booklist l)//查找有没有相同的书籍 8、void begin()//开始进入图书管理系统 9、void Introduction()//介绍图书管理系统的功能 10、void About()//图书管理系统的相关开发内容 11、void welcome()//欢迎进入图书管理系统 以下为重要函数的定义; void initlist(booknode *l)//建立空链表 { l=new booknode; l-next=NULL; } void insert(booknode *l)//图书馆添加书籍(定刚开始图书馆零本书) { booknode *q; booknode *p=l; int k=1; for(;p-next!=NULL;p-next){} //移动指针找到最后一个节点 while(k==1) { q=new booknode; cout请输入书的编号(书号为0结束):endl; cinq-id; if(p-id!=0) { cout请输入书名endl; cinq-title;

文档评论(0)

199****4744 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7002121022000045

1亿VIP精品文档

相关文档