图书馆管理系统(含代码)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆管理系统要求:
图书管理系统框架
1. 整个系统由两个独立的模块组成
1.1 内部管理模块 A
主要对图书馆的进行维护,包括对图书馆使用人员的管理,对图书的管理,对用户以及管理人员的密码管理。同时管理的用户的最大量为100。图书的最大量为500。
1.2 外部服务模块 B
普通图书馆用户的一些日常操作:如借书,还书,查询个人信息,查询图书信息。
2. 系统功能A(内部管理模块)
2.1 用户信息管理模块。可是实现注册新用户,删除用户,修改用户等等。用户信息包括个人信息和借阅信息。个人信息包括姓名、编号、联系方式。借阅信息包括借书总数(规定每个用户最多同时借3本)、欠款额。对于所有已借到的书,可以看到图书的信息、借书日期。
2.2 对图书的管理,也是新增,删除等。图书信息包括书名、作者、编号、出版社。图书可以实现多种方式查询。同时有标识能指出该图书是否已经被借出。
/*
2.5 对图书预订用户进行及时的信息反馈,预约时间最长为一周,如果有书已经可借了,那么通知预订该书的用户。如果该用户在一周内还没来借书的话,那么就通知第二个预订该书的用户。设计相应的数据结构。
*/
3. 系统功能B
3.1 按多种方式查找图书。(书名、作者、编号、出版社)
3.2 借书
要求输入用户的编号,然后判断该用户是否有欠费(超过30元则不允许借书)或者已经借满。判断要借的书是否已被借出,若未借出,将该书借给用户,修改相应的信息。
3.3 还书
判断是否有欠费(规定每本书可借一个月,超过规定时间按每天0.1元计费。
3.4 查询用户信息。包括个人信息以及借还书信息。
4. 要求
1.界面友好。对于用户输入,要有足够的提示信息,如“请选择(1借书2 还书……):”提示用户选择。
2.不用因为用户的错误输入而引起程序运行错误而中止执行。对输入值的大小范围、类型等进行正确性检查。对不合法的给出出错信息,指出错误类型,等待重新输入。
3.对删除数据(用户、图书)给出警告。
代码部分:
#include
using namespace std;
struct Time{
int year;
int month;
int day;
};
struct Book{
string id;
double price;
string name;
string press;
string author;
bool flag;
int reader_id;
Time borrowed_time;
};
class User{ //用户类public:
User()
{
}
User(string mid,string mpasswd,string mname)
{
id=mid;
passwd=mpasswd;
name=mname;
book_num=0;
accout=0;
book_id[0]="0";
book_id[1]="0";
book_id[2]="0";
}
void print_user()
{
cout<<"—————用户信息——————"< cout<<"用户名:"< cout<<"姓名:"< cout<<"余额:"< cout<<"已借"< cout<<"借阅的书:"< cout< } void set_id() { id="0"; } string get_id() { return id; } string get_passwd() { return passwd; } void set_passwd(string pass) { passwd=pass; } string get_name() return name; } void set_name(string mname) { name=mname; } void set_accout(double maccout) //余额充值函数{ accout=accout+maccout; } void set_book_id(int i,string a) { book_id[i]=a; } string get_book_id(int j) { return book_id[j]; } void set_book_num(int j) { book_num=book_num+j; double get_accout() { return accout; } private: string id; string book_id[3]; string name; string passwd; int book_num;//借的书的数量 double accout;//余额 }; class Library{ public: Library(string mid,string mpasswd) { int i; admin_id=mid; admin_passwd=mpasswd; ifout=0; for(i=0;i<100;i++)