版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、设计主题和要求问题说明设计完成图书馆管理基本工作的计算机管理系统。基本要求(1)每本书的注册内容包括图书编号、标题、作者、现有量、现有量。(2)创建索引表(路线表)以提高搜索效率。(3)系统的主要功能包括:写作及保管:购买新种类的书,确定图书号码后,列入图书账号表,如果名单上已经有,只增加现有库存量;借:如果某本书的现有量大于0,借一本书,确定登记借阅者的图书号码和归还期限,改变现有量。返还:取消借款人的登记,改变该书现有的量。二、集团分工团队成员:团队分工:初始化图书,保存新书,注册读者信息,保存文件图书借阅系统,图书返还系统查看图书信息,查看读者信息三、需求分析图书管理系统共需要8个模
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 _ xyInt
4、 book _ kcStruct book * next BK读者信息:Typedef struct readerchar reader _ num10;char reader _ name10;Int right博博洛max;Struct reader * next RD算法说明:进入系统后,首先初始化图书,输入图书的信息。开始1)初始化输入图书编号、名字、作者和图书数量进入系统初始化后,可以进入系统,显示功能列表,选择所有系统,但是在借书之前,必须输入读者信息。开始输入与功能相对应的数字输入的数字小于0且大于6错了!请重新输入执行选定的功能编辑签入2)编辑和接收输入图书信息判断这本书是否存
5、在否是在现有记录中追加现有图书的数量在系统中添加新记录3)输入读者信息登记读者输入读者信息:读者凭证编号判断这个读者是否存在结束否向系统添加新记录是重新输入读者信息5)退出并保存文件关闭系统保存文件判断储存是否成功错了!重新登录系统关闭系统是六、程序源代码#include#include#include#include#define Max 4Typedef struct bookchar book _ num10;char book _ name20;char book _ writer10;Int book _ xy/现有Int book _ kc/库存Struct book * next
6、 BKTypedef struct borrowchar borrow _ book _ num10;char limit _ date10; 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 _
7、Book();void Find _ Book();void add _ reader();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 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。printf(“ n n n n t t t启动图书管理员管理系统
8、n”);printf( n n n n t t * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。printf( n n n n t t按任意键进入系统);getch();system( cls );Int Menu() /*主菜单*/ int DMprintf(“ n t t图书管理系统主菜单 n”);printf(=Printf(*t0 -系统关闭 n );Printf(*t1 -编辑和签入 n );Printf(*t2 -读者注册 n );printf(=Printf(选择“相应代码:”)。);fo
9、r(;) scanf(“% d”,dm);/dm输入的数字If(dm0|dm6)printf(“ n错误”!请重新输入: 。);Else breakReturn DMVoid Menu_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 _ rea
10、der();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(“书名:”);/*输入书本名称*/scanf(“% s”,P0-book _ name);Printf(书籍作家:)
11、;/*输入图书作者*/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 _ bookPrintf(n新书签入模块 n );Printf(n输入新书信息n包含书
12、籍编号。标题。数量 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具有此编号的书已存在!直接进货! n );Printf(“图书数量:”);scanf(“% d”,P0-bo
13、ok _ 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 _ book=NULL)h _ book=P0;/*在这两种处置情况下,关联列表中均没有数据,h
14、ead直接指向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 *p0,*p,* p1int I;P=h _ readerPrintf(n开始初始化读者,输入读者信息。n包含凭证编号。名字. n );If (p=NULL)P0=(RD *)malloc(size of(RD);/*申请新节点存储空间*/H _ reader=p0P=h _ readerPrintf(“读者凭证编号:”);scanf(“% s”,P0-reader _ num);Printf(“读者姓名:”);scanf(“% s”,P0-re
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年美容从业技能培训开启美容之门
- 2026年安徽省母婴资格考试试卷及答案
- 2026年小肥羊炸鸡的企业社会责任
- 2027年山东省春季高考高三第一次模拟考试语文试题(含答案解析)
- 2026年货代员资格考试试卷及答案
- 2026年度医院感染防控知识考核试题有答案
- 可见光通信中OFDM调制性能的深度剖析与优化策略研究
- 可变光栅微加速度传感器:原理、技术与应用的深度剖析
- 2026年信用管理师考试题库(附答案和详细解析)
- 2026年耳鼻喉科常见鼻窦炎处理模拟考试试题及答案解析
- 贵州省劳动合同书
- JJG 1189.1-2026 测量用互感器检定规程 第1部分:标准电流互感器
- 申请2026年新产品试用函(6篇)范文
- JJG 1189.8-2026测量用互感器检定规程第8部分:宽量程电流互感器
- 小微企业安全生产管理台账(参考)
- 综治中心入驻单位工作制度
- 2026年上海围棋定级考测试题及答案
- 精益管理培训教学课件
- 潜水证考试题目及答案
- 除草剂的种类
- 江西财经大学会计学专业培养方案
评论
0/150
提交评论