模拟图书馆管理系统(“程序设计专周”报告)

模拟图书馆管理系统(“程序设计专周”报告)

ID:6382463

大小:59.50 KB

页数:8页

时间:2018-01-12

模拟图书馆管理系统(“程序设计专周”报告)_第1页
模拟图书馆管理系统(“程序设计专周”报告)_第2页
模拟图书馆管理系统(“程序设计专周”报告)_第3页
模拟图书馆管理系统(“程序设计专周”报告)_第4页
模拟图书馆管理系统(“程序设计专周”报告)_第5页
资源描述:

《模拟图书馆管理系统(“程序设计专周”报告)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、http://www.qadk.com/quanxunwang/“程序设计专周”报告实验题目:模拟图书馆管理系统班级:学号:33号姓名:指导教师:日期:19周一~周五http://www.qadk.com/quanxunwang/一、题目:模拟图书馆管理系统模拟图书管理系统:图书管理的基本业务包括对一本书的入库、清除、查询、借出、归还等,设书的内容至少包括书号、书名、作者、库存总量和现存量等。二、算法基本思想描述:将整个程序划分为五个模块,分别定义了五个函数来实现管理系统的功能,采用单链表的结构进行数据操作。三、设计1.数据

2、结构的设计typedefstructBookList{charnum[10];charname[20];charauthor[20];inttotal;intleavings;structBookListnext;}Book;采用链表的结构来进行数据操作,一本书的数据包括:书号、书名、作者、库存总量、现存量以及指针区域。2.算法的设计(1)关键算法设计思路描述在构思图书馆管理系统的结构时,我将整个程序划分为五个模块,分别定义了五个函数来实现管理系统的功能,除此之外在对程序的界面设计上加入了一些动画效果。在数据结构上采用单链表

3、的结构方式,这样在读取文件中数据的时候能够节省内存空间。设计主菜单时,用while(1)和switch()来实现功能的选择以及运行一项功能后返回主菜单。在整个程序中,统一采用了以输入0的方式返回或退出,并在模块有需要键盘输入地方加入了防错误输入的功能,防止输入错误导致程序错误运行,此功能采用判断输入值的ASCII码或字符串的比较。入库模块:首先判断数据文件是否存在,如存在以追加的方式打开,如不存在以写入的方式打开。输入图书的具体数据(在输入过程中,如输入的书号为0则返回主菜单)、存盘,判断存盘成功则打印“成功添加”,如存盘失

4、败打印“添加失败”。最后返回入起始界面(入库模块)。清除模块:进入清除模块则将文件中的全部数据用单链表的结构读入内存,提示输入要删除的书号,在内存中寻找并删除,删除后可以马上存盘或是直到全部删除完成后再选择操作,在防止操作后忘记存盘,在程序中加入了自动判断操作过的数据是否己经进行过存盘的功能。查询模块:本模块分为三个子模块:以书号方式查询、以书名的方式查询、以作者的方式查询。前两个查询功能只要找到符合条件的数据时就停止,以作者方式因为考虑到一个作者不止一本作品,所以对全部的数据进行查找,并打印出所有符合条件的数据。如果未找到

5、则打印“没有找到”,最后返回子功能模块起始,直到输入0返回上一级。借出、还书模块:http://www.qadk.com/quanxunwang/这两个功能的思路完全一样,不同的是对数据中的现存量的运算。两个功能都是先建立一个图书类型的数据指针,逐条将文件中的数据读入内存,并与输入的数据进行比较,如果一致则先对内存中的数据进行操作,再将文件中的fp指针后退sizeof(Book)个字节,将内存中的经过修改过的数据写入文件。完成一条操作后,提示进行下一条操作,输入0时返回主菜单。(2)程序结构及模块名称描述主程序界面初始化入库

6、清除查询借出归还书号查询书名查询作者查询全部列表a)voidmain()//主程序b)voids(long)//时间延迟函数c)voidsta()//界面初始效果d)voidwel()//界面初始效果e)voidbookadd()//入库f)voidsa_ve(sqtype)//清除函数中保存文件函数g)voiddel()//清除h)voidr()//查询j)voids_1()//查询功能中以书号方式查询k)voids_2()//以书名方式查询l)voids_3()//以作者方式查询m)voidreadall()//列出全部

7、图书n)voidborrow()//借出o)voidback()//归还p)voidbye()//退出效果(3)主要模块算法描述/添加/voidbookadd()/添加图书/{FILEfp;Bookfinger;chartemp[10];fp=fopen("blist.db","rb");/读方式打开文件/if(fp==NULL)fp=fopen("blist.db","wb");/写方式打开文件/else/如果有书就添加/{http://www.qadk.com/quanxunwang/fclose(fp);fp=fope

8、n("blist.db","ab");/追加方式打开文件/}clrscr();while(1){printf("请输入数据:");/逐个输入新图书的资料/printf("请输入书号(输入0结束添加):");gets(temp);if(strcmp(temp,"0"))strcpy(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。