数据结构图书管理系统.doc
上传人:一吃****瀚文 上传时间:2024-09-11 格式:DOC 页数:14 大小:54KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

数据结构图书管理系统.doc

数据结构图书管理系统.doc

预览

免费试读已结束,剩余 4 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数据结构课程设计说明书学生姓名:学号:学院:专业:题目:成绩指导教师年月日设计目得(小标题黑体五号字)设计一个计算机管理系统完成图书管理基本业务(数据可以存储在一个数据文件中,数据结构、具体数据自定).设计内容与要求具体功能有:1)每种书得登记内容包括书号、书名、著作者、出版单位、现存量与库存量;2)对书号建立索引表(线性表)以提高查找效率;3)采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;4)借阅:如果一种书得现存量大于0,则借出一本,登记借阅者得书证号与归还期限,改变现存量;5)归还:注销对借阅者得登记,改变该书得现存量。3.本设计所采用得数据结构所用数据结构:线性表、查找、排序链表:HYPERLINK"”用一组地址任意得HYPERLINK”"存储单元存放线性表中得HYPERLINK"”数据元素。以元素(HYPERLINK""数据元素得映象)+HYPERLINK”"指针(指示后继元素存储位置)=结点(表示HYPERLINK""数据元素或数据元素得映象)以“结点得序列"表示线性表称作线性链表(单链表)单链表就是一种链式存取得结构,为找第i个HYPERLINK""数据元素必须先找到第i-1个数据元素。因此,查找第i个HYPERLINK”"数据元素得基本操作为:移动HYPERLINK"”指针,比较j与i。(1)malloc(size)在内存得HYPERLINK”"动态存储区申请一个长度为size字节得连续空间。(2)calloc(n,size)在内存得HYPERLINK”"动态存储区申请n个长度为size字节得连续空间,函数返回值为分配空间得首地址。若此函数未被成功执行,函数返回值为0.(3)free(p)释放由HYPERLINK""指针p所指向得存储单元,而存储单元得大小就是最近一次调用malloc()或calloc()函数时所申请得HYPERLINK”"存储空间.运用了单链表得插入、删除、排序、修改等一些操作!功能模块详细设计4、1详细设计思想基本思想:图书信息录入、图书信息得查询、图书信息得排序、图书信息得修改、图书信息得删除、图书得借阅、图书得归还、退出图书管理系统.程序中得主要函数有:voidmain()//主函数intCreateListR(LinkList*L)//尾插法建表voidLocateElem(LinkList*L)//查询intSort(LinkList*L)//递增有序排序(直接插入排序法)voidDisplay(LinkList*L)//输出排序结果ModifyList(LinkList*L)//修改intListDelete(LinkList*L)//删除voidBorrow(LinkList*L)//借阅voidReturn(LinkList*L)//归还图书信息得录入添加图书信息得查询模块图书信息得排序模块图书信息得修改模块图书信息得删除模块图书得借阅模块图书得归还模块退出图书管理系统图书管理系统主程序模块4、2核心代码#include<stdio、h〉#include〈string、h>#include<stdlib、h>#include〈malloc、h>typedefstruct{intnum;charname[20];ﻩcharauthor[20];charpress[20];intcount;charprice[10];}ElemType;typedefstructLNodeﻩ//定义单链表结点类型{ElemTypedata;structLNode*next;}LinkList;voidInitList(LinkList*L)//初始化线性表{L=(LinkList*)malloc(sizeof(LinkList));ﻩ//创建头结点L—>next=NULL;}intCreateListR(LinkList*L)//尾插法建表{ﻩinti,n;LinkList*s,*q,*p;ﻩp=L;while(p->next!=NULL)p=p—〉next;printf("请输入需要录入得图书信息得个数:n=");ﻩscanf("%d",&n);ﻩfor(i=1;i〈n+1;i++){s=(LinkList*)malloc(sizeof(LinkList));printf("书号书名作者出版社名称存馆数量定价\n");ﻩﻩscanf("%d%s%s%s%d%s”,&