版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、图书馆管理系统实验报告一、问题说明存放很多书的小书库里包含了很多有关书的分类、标题、作者名、购买日期、价格等信息。现在需要编写程序,以方便图书管理。基本要求:a.图书信息建设。b.提供想寻找的功能,用各种关键字寻找需要的书。例如,如果按标题查找并输入标题,则将显示有关该书的所有信息或指定的信息。c.提供按各种关键字排序的功能,如按出版日期排序所有书籍。d.提供了裴珉姬管理功能,可以添加、修改和删除图书信息。数据结构和算法分析数据存储结构可以根据需要进行选择。顺序表、单链接列表、双链接列表、堆栈等。算法主要需要使用数据查询和排序算法。二、摘要设计有四个模块1)初始化图书输入有关图书的部分信息、号
2、码、作者、标题、数量,使有一定的库存。2)穿新书新书编辑入库,输入号码后,只需输入数量,请继续输入标题、作者和数量。3)查询图书信息4)退出关闭读书管理系统,保存图书信息。图书馆管理系统贷款操作模块图书馆管理模块多莉查询操作模块图书租赁系统反书系统读者信息祖怀图书信息祖怀编辑签入初始化图书信息三、算法设计进入系统后,首先初始化图书,输入图书的信息。开始输入图书编号、名字、作者和图书数量进入系统1)编辑和接收输入图书信息判断这本书是否存在是在现有记录中追加现有图书的数量否在系统中添加新记录2)查询图书信息判断图书信息是否空否图书信息输出:号码、名字、作者、现有和库存结束四、运行结果和调试分析初始
3、化图书信息相同的新书入库执行结果图表编辑和存储其他新书编辑保存后图书信息运行结果图祖怀借书借书查询图书信息的运营结果也是借用同一本书的执行结果图退场五、总结经验这次节目通过网络确认了,但是通过这次实验知道了图书馆管理系统的过程,知道了以前不知道的知识,运行程序的时候也出现了问题,借书的时候不能显示是只借了一本书,还是不能借,不能改变借书最多的数量,还是渡边杏,最终在每个判断的输出上贴上goto end,借了书,就可以正常借书。程序有点长,一个函数就能发挥作用,他用了两个函数,我就能换一个。图书租赁系统比较复杂,不容易理解,和同学聊天,自己看了以后才理解。这次实验发现了数组、while语句、sw
4、itch语句、关联列表、如何使用system(cls )清理屏幕、strcmp用于比较字符串s1和s2的大小,strcpy用于将字符串s2的值分配给s1。这次实验提高了我们自己动脑筋的能力,再做一些这样的实验的意义深远,与现实生活相结合的程序增加了我的兴趣。源代码#include#include#include#include#define max 4typedef struct bookchar book _ num10;char book _ name20;char book _ writer10;int book _ xyint book _ kcstruct book * next b
5、ktypedef struct borrowchar borrow _ book _ num10;char limit _ date8; botypedef struct readerchar reader _ num10;char reader _ name10;int right博博洛max;struct reader * next rdbk * h _ bookrd * h _ readervoid log in();int menu();void init();void init _ book();void menu _ select();void insert _ new _ boo
6、k();void find _ book();void add _ reader();void print _ reader();void print _ book();void borrow _ book();void return _ book();void save();void save _ book();void save _ reader();void load();void load _ reader();void load _ book();void login()system( cls );printf( n n n n t t * * * * * * * * * * * *
7、 * * * * * * * * * * * * * * * * * * * * * * *。printf(“ n n n n t t t启动图书管理员管理系统 n”);printf( n n n n t t * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。printf(“ n n t t”此程序作者王学文: n n n n n n );printf( n n n n t t按任意键进入系统.);getch();system( cls );int menu() /*主菜单*/ int dmprintf(
8、“ n t t图书管理系统主菜单 n”);printf(=printf(*t0 -系统关闭 n );printf(*t1 -编辑和签入 n );printf(*t2 -读者注册 n );printf(*t3 -贷款注册 n );printf(*t4 -管理返回 n );printf(*t5 -图书信息祖怀 n );printf(*t6 -读者信息祖怀 n );printf(=printf(选择“相应代码:”)。);for(;) scanf(“% d”,dm);/dm输入的数字if(dm0|dm6)printf(“ n错误”!请重新输入: 。);else breakreturn dmvoid m
9、enu_select()/*主菜单选择函数*/for(;)选择switch(menu()/*功能*/case 0:system( cls );save();printf(“ n n t”文件已成功保存! n );printf(“ n n t”,然后欢迎使用此系统! n );getch();exit(0);case 13360 insert _ new _ book();breakcase 23360 add _ reader();breakcase : borrow _ book();breakcase 43360 return _ book();breakcase 53360 print _
10、 book();breakcase 63360 print _ reader();breakdefault : printf(“ n错误!”);exit(0);void init() /*初始化*/bk * p0printf(n开始初始化书籍。请输入书本资讯.n编号。标题。包含数量. n );p0=(bk *)malloc(size of(bk);h _ book=p0printf(“ n输入图书信息: n”);printf( book number : );/*输入书籍编号(唯一)*/scanf(“% s”,p0-book _ num);printf(“书名:”);/*输入书本名称*/sca
11、nf(“% s”,p0-book _ name);printf(书籍作家:);/*输入图书作者*/scanf(“% s”,p0-book _ writer);printf(“图书数量:”);/*输入图书数量*/scanf(“% d”,p0-book _ kc);p0-book _ xy=p0-book _ kc;/*图书馀额和现有量相等*/p0-next=null;printf(n书本资讯初始化完成!按任意键继续下一步. n );getch();system( cls );void insert_new_book()/*入库新书*/bk *p、*p0、* p1p=p1=h _ bookprin
12、tf(“ n新书签入模块. n );printf(n请输入新书信息.32;n包含书本编号。标题。数. n );p0=(bk *)malloc(size of(bk);printf( book number : );scanf(“% s”,p0-book _ num);while (strcmp (p0-book _ num,p1-book _ num)!=0p1-next!=null)p1=p1-next;if (strcmp (p0-book _ num,p1-book _ num)=0)/*在这两种情况下,如果存在书籍编号,则只需直接进入库并输入书籍数*printf(n具有此编号的书已存在
13、!直接进货! n );printf(“图书数量:”);scanf(“% d”,p0-book _ kc);p1-book _ kc=p0-book _ kc;p1-book _ xy=p0-book _ kc;如果else/*不存在,请输入附加信息,插入操作正在进行*/printf(“书名:”);scanf(“% s”,p0-book _ name);printf(书籍作家:);scanf(“% s”,p0-book _ writer);printf(“图书数量:”);scanf(“% d”,p0-book _ kc);/库存数量while(p-next) p=p-next;if(h _ bo
14、ok=null)h _ book=p0;/*在这两种处置情况下,关联列表中均没有数据,head直接指向p0 */else p-next=p0;/*在这两种情况下,关联列表都包含数据,关联列表中最后一个元素的next指向位置p0 *p0-next=null;p0-book _ xy=p0-book _ kc;printf(n新书签入完成!按任意键继续下一步. n );getch();system( cls );void add_reader()/*添加读者*/ rd * p0int i;printf(“ n开始初始化读者,输入读者信息.n包含凭证编号。名字. n );p0=(rd *)malloc(size of(rd);/*新节点存储空间殷铁生*/h _ reader=p0printf(“ n输入有关读者的信息: n”);printf(“读者凭证编号:”);scanf(“% s”,p0-reader _ num);printf(“读者姓名:”);scanf(“% s”,p0-reader _ name);p0-right=0;for(i=0);iborrowi。borrow_book_num,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026二上数学第二单元动画课件
- 2026北师大二下分苹果游戏课件
- 外墙保温防火1
- 2026北师大二下奥运开幕动画课件
- 新苏教版科学五年级上册5-19.《海豚与声呐》教学设计
- Unit 3 The seasons Section 1 Experiencing and understanding language Reading 教学设计2026-2027学年沪教版英语七年级上册
- 2026四下数学观察物体二动画课件
- 垃圾分类教育主题班会课件(共23张)
- 核设施操纵人员资格《应急处置》考试题库(共1000题)
- 海底电缆连接器全球前25强生产商排名及市场份额(by QYResearch)
- 《Linux网络操作系统项目教程(RHEL 8CentOS 8)(微课版)(第4版)》电子教案全
- 2026年幼儿园营养膳食工作计划
- 大数据财政管理的应用与优化
- 教师网络行为规范制度
- EPC现场管理培训课件
- 2025年中小学中层干部竞聘笔试题及答案
- 2025-2030脑电生物反馈技术在儿童注意力训练中的临床转化与商业模式构建
- 带班育人方略课件
- 2024-2025学年安徽省A10联盟高一下学期4月期中物理试题(解析版)
- 新闻报道策划全流程操作方案
- 小儿腺样体肥大教学课件
评论
0/150
提交评论