资源简介
一、问题描述
图书借阅管理系统是一个学校不可缺少的部分,它的内容对于学校的管理者和读者来说都至关重要,直接关系到图书的借用率,所以开发图书管理系统能够为管理员和读者提供充足的信息和快捷的查询手段。
编写程序系统主要实现图书馆的增加图书、查询图书、删除图书、借阅图书、还书;增加会员、查询会员、删除会员、借书信息、到期书催还等智能化管理过程。图书管理者只需略懂电脑知识就可以简易的操作该图书借阅管理系统。
二、实验目的
1.强化和巩固理论基础,掌握编程技巧,为后续的专业课学习打下良好的基础;
2.要求用C/C++语言及相应开发环境,实现一个小型完整程序的设计与开发;
3.巩固深化所学课程的知识,培养学生运用知识,分析和解决实际问题的能力。
三、设计过程
3.1 系统需求分析
图书借阅管理系统主要分为两大功能:
(1)图书管理(增加图书、查询图书、删除图书、图书借阅、还书到期书催还);
(2)会员管理(增加会员、查询会员、删除会员、借书信息);
要完成这个题目,主要是建立解决图书和会员的信息的存储,解决的方法是建立两个带头结点的单链表,分别用于存储图书和会员。解决了这个问题后就是如何建立这两个链表的联系了,解决的方法是在图书结点中设一个借书人编号,在会员结点中设一个数组用于存会员借的书。解决了这两个问题,剩下的工作就简单了。只需按链表的操作就可以了。
3.1.1 功能要求
在图书借阅管理程序中须实现以下功
..............................
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#define MAX 100
#define MAX1 2 //本科生最大借阅量
#define MAX2 5 //研究生最大借阅量
#define MAX3 10 //教师最大借阅量
#define MAX4 100 //管理员最大借阅量
//书的结构体
typedef struct book
{
float price; //图书单价
int membernum; //借书人编号
char name[80]; //图书名
long num; //图书编号
char writername[20]; //作者姓名
char publish[30]; //出版社名称
int yes; //判断书是否存在或者已经借出,1存在,0借出
struct book *next; //结点指针
}Book*BookList;
//借书时间结构体
typedef struct Time
{
int year;
int month;
int day;
}data;
//会员借的书的结构体
typedef struct BorrowBook
{
long num; //借的书的编号
struct Time time; //借书时间
struct Time borrowtime; //借书期限
}BBook;
//会员的结构体
typedef struct member
{
char name[20]; //会员姓名
char sex; //会员性别男m女f
long num; //会员编号
int style; //会员类型1:本科生;2:研究生;3:教师;4:管理员;
int max; //会员借书数目,初始为0
int yes; //会员是否借书,1是,0否
BBook t[MAX]; //会员借的书的数组
struct member *next; //结点指针
}Member*MemberList;
//查询图书
int Search_BookName(BookList &H) //按书名查询
{
Book *p;
p=H->next;
char n[80];
int flag=0;
cout<<“ ○输入要查询的书名:“;
cin>>n;
for(;p!=NULL;p=p->next)
{
if(strcmp(p->namen)==0)
{
if(flag==0)
cout< cout<<“ “<name<<“ “<num<price<writername<publish;
if(p->yes==1)
cout< else
cout< flag=1;
continue;
}
}
cout<<“┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈“< if(p==NULL&&flag==0)
{
cout<<“ ※没有相关信息!※“< cout<<“┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈“< }
return 1;
}
//增加图书
Book *Init_B() //初试化图书链表
{
Book *H;
H=(Book *)malloc(sizeof(Book));
if(!H) exit(1);
H->next=NULL;
return H;
}
int BookAdd(BookList &H) //建立一个带头结点的链表用来存储图书信息
{
int i=0; //统计要增加的图书量
Book *p*q;
p=(Book *)malloc(sizeof(Book));
if(!p) exit(1);
if(H->next==NULL)
{
cout<<“ ○输入图书编号:“;
cin>>p->num;
if(p->num==0) //退出“增加图书“
{
cout<<“ 共计“< cout<<“┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈“< return 1;
}
cout<<“ ○输入书名:“;
cin>>p->name;
cout<<“ ○输入图书价格:“;
cin>>p->price;
cout<<“ ○输入作者姓名:“;
cin>>p->writername;
cout<<“
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 940370 2009-07-19 12:23 图书借阅管理系统(报告书).pdf
文件 760 2009-07-09 23:47 图书借阅管理系统(源程序)\book.txt
文件 50176 2009-07-09 23:47 图书借阅管理系统(源程序)\Debug\vc60.idb
文件 69632 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\vc60.pdb
文件 278607 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\图书借阅管理系统.exe
文件 329380 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\图书借阅管理系统.ilk
文件 88627 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\图书借阅管理系统.obj
文件 319928 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\图书借阅管理系统.pch
文件 541696 2009-07-09 23:46 图书借阅管理系统(源程序)\Debug\图书借阅管理系统.pdb
文件 14220 2009-07-09 23:47 图书借阅管理系统(源程序)\member.txt
文件 33054 2009-07-09 17:34 图书借阅管理系统(源程序)\图书借阅管理系统.cpp
文件 3523 2009-06-21 13:51 图书借阅管理系统(源程序)\图书借阅管理系统.dsp
文件 557 2009-06-21 13:53 图书借阅管理系统(源程序)\图书借阅管理系统.dsw
文件 66560 2009-07-09 23:48 图书借阅管理系统(源程序)\图书借阅管理系统.ncb
文件 48640 2009-07-09 23:48 图书借阅管理系统(源程序)\图书借阅管理系统.opt
文件 266 2009-07-09 23:47 图书借阅管理系统(源程序)\图书借阅管理系统.plg
目录 0 2009-07-19 12:29 图书借阅管理系统(源程序)\Debug
目录 0 2009-07-19 12:29 图书借阅管理系统(源程序)
----------- --------- ---------- ----- ----
2785996 18
相关资源
- C++程序坦克大战MFC
- libstdc++.so.6.0.24.tar.gz
- c#调用c++DLL,dll有二维数组
- c++P2P网络编程代码
- 广义逆矩阵 C++实现
- duilib中WebBrowser C++与js相互调用
- VS MFC C++ 万年历
- sxstrace.exe修复工具C++.rar
- linux微型web服务器
- c++面向对象程序设计_杜茂康_课后答案
- C++做的拼图游戏有详细步骤
- 使用VC++制作的简易电子时钟
- VC++开发的软件动态链接库mfc42d.dll m
- C++ Primer 第三版 Answer Book 題解
- 操作系统课程设计 哲学家进餐问题完
- 360杀毒软件界面源码—Visual C++6.0开发
- VC++MP3播放器课程设计实验报告
- 基于VC++6.0的绘图软件画直线曲线矩形
- effective c++ 第三版高清英文版
- 怪兽C++程序
- MarkAllenWeiss数据结构与算法分析c++语言
- C++ OpenGL实现太阳系运行轨迹
- C++入门经典 第四版
- 工程测量学自由设站程序设计
- 神思读卡器开发包
- MicrosoftC++BuildTools14.0
- C++ 消息中间件MQ4CPP最新版源码
- 遗传算法解八数码问题
- C++开发的OPENGL立方体,支持鼠标拖拽
- C++经典书籍集合6本书合集
评论
共有 条评论