HNU程序设计-图书馆信息管理系统设计以及实验报告

本题为某大学大一的程序设计大作业,最后的得分为86分/100分。

作者认为可以将它发出来,为有需要的同学,特别是该大学该门科目的后继者提供帮助与解答。

由于作者水平有限,所用思想很朴素,写法很基础,代码很普通。请大佬海涵。

完成者:Eliack & Arcticwolf (特别感谢Eliack的主要贡献)

【2023.12.18更新】有同学想要txt文件,已经补在后面。

现在回过来看,当时写的真的很朴素。也许不断学习不断进步就是人生的意义吧。 

如果无法运行的同学,确保工程文件是这个形式:

(.o之类的是编译出来生成的,不用管。确保工程没建错,确保.cpp和.h都在,.txt更新在最后了,需要自己动手导入。)

 下面是原帖(文章很长,学会用目录跳转):

如图,改了好多个版本呜呜,小蒟蒻的摸索之路远啊。

一、题目描述

H大学图书馆

H大学图书馆邀请你建立一个图书馆信息管理系统。请使用面向对象思想完成该问题,具体要求如下:

一、设计一款文字式交互的图书管理系统;

  • 图书馆必须支持至少10000册书存储,如果可实现书籍可动态增长,加分

三、图书信息包含:

  1. 题名
  2. ISBN/ISSN
  3. 作者
  4. 分类号(分类规则自定,要求有三级分类,可参考中图分类法)

四、图书馆系统提供两种用户模式,请为他们设计不同的用户类:

1)管理员模式:

  1. 系统最初提供一个默认的管理员账户以及默认密码;
  2. 管理员具备以下功能:
  • 可以使用管理员账号登录
  • 支持对学校用户的账号进行基本管理,添加、删除学校用户默认账号和密码,默认账号为学号/教师编号,密码为123456;恢复学校用户默认密码;
  • 管理员可以对图书信息进行修改
  • 管理员可以增加、删除、搜索图书

2)学校用户模式(学校用户超过5千人):

  1. 学校用户可以通过账号和密码登录,账号为学号/教师编号,密码为123456;
  2. 学校用户可以修改自己的密码
  3. 学校用户可以搜索图书
  4. 学校用户可以借、还图书
  5. 学校用户可以查看自己的借阅记录

五、设计图书馆类,包含馆藏图书列表、用户列表等成员、在馆记录、用户借阅记录等。

六、图书馆系统提供根据任一信息的搜索图书功能:

  1. 题名,精确查找到书
  2. ISBN/ISSN,精确查找到书
  3. 作者,模糊查找到该作者所有书,字典序排序
  4. 分类号,三级分类,每一级分类均可模糊查找到书,字典序排序,按页显示;如,N 自然科学总论——TP 自动化技术、计算机技术——TP3 计算机技术。

在以上每一级时,均会出现该级所有数目,字典排序,按页显示;

(这个图片不知道为什么违规了)

不明白意思的同学,可以自行登入学校图书馆系统,进入搜索书目功能中,点击分类导航选项,然后进入每级分类的页面看看

     5.搜索不考察性能仅考察功能

七、加分项(总分不超过100分)

(1)支持大数据,比如书籍记录突破百万,用户数量突破万级规模;

(2)贴近实际的图书馆管理系统,新增若干功能等;

(3)实现文件的创建、读、写等操作;

(4)考虑用户体验,如使用方便度等;

(5)搜索时性能考察,调查、思考、设计加强搜索性能的方式,此项仅适合学有余力的同学;

八、完成进度建议和自查评分

1、第一阶段,需要完成一万的图书存储;该功能需要至少设计并完成图书类与图书馆系统类的相关部分(包括相关实验报告、代码和测试);

2、第二阶段,完成两种用户模式,欠搜索功能(包括相关实验报告、代码和测试);

3、第三阶段,搜索功能(包括相关实验报告、代码和测试);知识点:文件、排序。

九、验收安排

1、第16周小班课上小组汇报,15周周五之前向助教申请,若无申请则随机指定,每班不超过4组。

2、未在课上进行汇报的,请于第16周内和助教预约验收时间与方式。

二、实验报告

目录

封面

目录

图书管理系统

1、 问题描述

2、 分析设计

思路分析及原理

数据结构的定义

函数设计、参数规格以及返回类型:

1. 全局变量部分

2. 类

1. book类

2. user类

3. administrator类

4. record类

5. library类

3、运行测试

一、登录页面

二、用户模式

1. 修改密码

2. 搜索图书

3. 借图书

4. 还图书

5. 查看借阅记录

0. 退出登录

三、管理员模式

1. 管理用户账号

2. 修改图书信息

3. 搜索图书信息

4. 查看借阅情况

5. 查看馆藏图书列表

6. 查看用户列表

0. 退出登录

四、 小彩蛋-开发者信息展示

五、 关于谬误输入性息的处理

1、switch分支的谬误输入性息处理

2、 关于不存在的账户、书籍信息的处理

3、 关于重置密码时的验证

六、 关于颜色的处理

4、分析与总结

1. 实验分析

2. 遇到的问题

3. 解决的办法

4. 学习到的新知识点

图书管理系统

1、 问题描述

H大学图书馆邀请你建立一个图书馆信息管理系统。请使用面向对象思想完成该问题,具体要求如下:

一、设计一款文字式交互的图书管理系统;

二、图书馆必须支持至少10000册书存储,如果可实现书籍可动态增长,加分

三、图书信息包含:

  • 题名
  • ISBN/ISSN
  • 作者
  • 分类号(分类规则自定,要求有三级分类,可参考中图分类法)

四、图书馆系统提供两种用户模式,请为他们设计不同的用户类:
1)管理员模式:

  • 系统最初提供一个默认的管理员账户以及默认密码;
  • 管理员具备以下功能:
    • 可以使用管理员账号登录
    • 支持对学校用户的账号进行基本管理,添加、删除学校用户默认账号和密码,默认账号为学号/教师编号,密码为123456;恢复学校用户默认密码;
    • 管理员可以对图书信息进行修改
    • 管理员可以增加、删除、搜索图书

2)学校用户模式(学校用户超过5千人):

  • 学校用户可以通过账号和密码登录,账号为学号/教师编号,密码为123456;
  • 学校用户可以修改自己的密码
  • 学校用户可以搜索图书
  • 学校用户可以借、还图书
  • 学校用户可以查看自己的借阅记录

五、设计图书馆类,包含馆藏图书列表、用户列表等成员、在馆记录、用户借阅记录等。

六、图书馆系统提供根据任一信息的搜索图书功能:

  • 题名,精确查找到书
  • ISBN/ISSN,精确查找到书
  • 作者,模糊查找到该作者所有书,字典序排序
  • 分类号,三级分类,每一级分类均可模糊查找到书,字典序排序,按页显示;如,N 自然科学总论——TP 自动化技术、计算机技术——TP3 计算机技术。
    在以上每一级时,均会出现该级所有数目,字典排序,按页显示;不明白意思的同学,可以自行登入学校图书馆系统,进入搜索书目功能中,点击分类导航选项,然后进入每级分类的页面看看
  • 搜索不考察性能,仅考察功能

七、加分项(总分不超过100分)
(1)支持大数据,比如书籍记录突破百万,用户数量突破万级规模;
(2)贴近实际的图书馆管理系统,新增若干功能等;
(3)实现文件的创建、读、写等操作;
(4)考虑用户体验,如使用方便度等;
(5)搜索时性能考察,调查、思考、设计加强搜索性能的方式,此项仅适合学有余力的同学;

2、 分析设计

思路分析及原理

要建立一个图书馆信息管理系统。自然有图书book类,用户user类,管理员administrator类。为了将他们统一,还得有一个图书馆library大类

图书馆要实现两种用户模式和一系列功能。开始时需要有一个菜单供使用者选择,显示这个菜单的功能作为library类中的一个成员函数。选择不同的模式则通过switch,case的结构来实现。

当选择某种模式时,会出现账号密码登录的界面,代码直接写在main函数中。

登陆后要提示使用者该种模式的各种功能。选择不同的功能同样使用switch,case结构。

当修改数据结构中的某个数据时或者添加某个新数据时,需要将数据保存到txt中,因此要用到读文件和写文件,为了不混淆各种类的读文件和写文件,则每个类都有读文件和写文件函数

当执行功能时,融合清屏,暂停等操作实现界面的整洁;通过goto可以随时返回到执行的上一页。

数据结构的定义

  均定义在library的大类中

  1. book booksarray[100000]  book类的数组代表100000储存量的图书

(规模可达到10万及以上)

  1. user userarray[8000]  user类的数组代表8000储存量的用户
  2. administrator adminarray[100] administrator类的数组代表100储存量的管理员
  3. record recordarray[100000] record类的数组代表100000储存量的图书借阅记录

函数设计、参数规格以及返回类型:

1.全局变量部分

在main函数所在cpp中,main函数外定义了一个图书馆library类的全局变量hnu.。

1.类

1.book类

            属性:题目string topic、ISBN/ISSN string type、作者 string writer、分类号

        string category、借出状态int state、借阅者账号 long ownerid。

2.user类

            属性:账号long account、密码string password。

        成员函数:void usermenu() 显示用户功能菜单

3.administrator

            属性:账号long account、密码string password。

        成员函数:void administratormenu() 显示管理员功能菜单

void manage_accountmenu() 显示管理用户系列功能菜单

                  void modify_bookmenu() 显示管理图书系列功能菜单

                  void book_management_menu();显示修改图书信息界面菜单

4.record类

         属性:账号long ownerid、题目string topic、作者string writer、借阅状态 int

state.。

5.library类

属性:书的数量 int booksnum、借阅记录的数量int recordnum、用户的数量int usernum、管理员的数量int adminnum、书类数组book booksarray[10000]、用户类数组user userarray[8000]、管理员类数组administrator adminarray[100]、借阅记录类数组record recordarray[10000]。

        成员函数:(选择类内声明,类外定义分文件编写)

            //user.h

            library(); 构造函数

          void iniuser(); 从文件中读用户信息函数

        void save(); 从文件中写用户信息函数

    //library.cpp

    void signmenu(); 显示登录界面菜单

void zongmenu(); 显示用户模式菜单

void checkmenu(); 显示检索信息种类菜单

void xinxitypemenu(); 显示检索信息种类菜单

      //void developerinfor();显示开发者函数

    //books.h

    int getbooksnum(); 获取图书数量函数

    void inibooks(); 从文件中读图书信息函数

void booksave(); 从文件中写图书信息函数

    void showbook(book Book); 展示图书信息函数

    void search(); 图书搜索函数

    void borrowbook(long); 借图书函数

    void givebook(long);  还图书函数

  

    //borrowrecord.h

    void userborrowrecord(long);  显示特点借阅者的借阅记录

void allborrowrecord(); 显示所有借阅记录函数

void recordsave(book);   从文件中写借阅记录函数

    void inirecord();    从文件中读借阅记录函数

    int getrecordnum();  获取借阅记录数量函数

  

    //login_check.h

    int login_user(int account,string password);

判定用户是否登陆成功,否则返回错误类型

    int login_admin(int account,string password);

判定管理员是否登陆成功,否则返回错误类型

    

//admin.h

    void admin_save(); 从文件中写管理员信息函数

    void iniadmin();  从文件中读管理员信息函数

    void addaccount(); 添加新用户函数

    void deleteaccount();  删除某用户函数

    void modifypassword();  修改用户信息函数

    void resetpassword();  恢复默认账号密码函数

   void addbook();  添加图书函数

    void deletebook(); 删除图书函数

    void modifybook(); 修改图书信息函数

3、运行测试

一、登录页面

        显示登录菜单

        使用library类中的signmenu()成员函数

         

二、用户模式

        显示用户功能菜单

        使用library类中的usermenu()成员函数

        

1.修改密码

 直接在main函数中进行修改

修改好后使用usersave()函数进行保存

并且返回上一级用户模式功能目录

2.搜索图书

     使用library中search()成员函数进行搜索

    其中要用到显示信息种类xinxitype()函数提示搜索所用到的的信息、

    提醒输入不同的数字以代表不同的搜索信息。

    搜索后返回用户功能界面。

1.题名搜索

             

               

2.ISBN/ISNN搜索

3.作者搜索

4.分类号搜索

这里要用到三级分类号搜索,由于分类号的格式是固定的且在txt中是一个字符串,所以需要提取各个位置的字符串以分离各级分类号,这里写了一个函数以分离各级分类号,在搜索中依次检索各级分类号,并且搜索到的书籍若大于10,又融合清屏等操作模拟了翻页。

2.借图书

        同样是四种信息来搜索图书从而借图书,而在借图书中通过四种信息来借图书都是类似的,这里只放一个代码。

        当用户输入书的编号选择借书时,会判断书籍是否已经被借阅,如果已经借阅则会提示,借阅后返回用户功能界面。

          

3.还图书

          首先要显示该用户已经借阅的书籍,然后会提示归还书籍

           还图书后会返回用户功能界面。

4.查看借阅记录

           显示某个用户的借阅记录

         

         查看完后会返回用户功能界面。

5.退出登录

        通过goto返回上一级

        

三、管理员模式

        显示用户功能菜单

        使用library类中的administratormenu()成员函数

1.管理用户账号

1.添加用户账号

在上级目录“管理用户账号”下选择该功能后,自动调用addaccount函数,实现后返回清屏并返回上级目录“管理用户账号”。

首先需要判断用户规模是否已达上限,达到上限后将不能添加;

然后有一个账号查重的问题,如果即将要添加的账户与已经存在的账户重复,需要提示并让管理员重新添加;

若都无问题,则提示管理员输入密码并保存进现行数组,并及时保存至txt文件内;

2.删除用户账号

在上级目录“管理用户账号”下选择该功能后,自动调用deleteaccount函数,实现后返回清屏并返回上级目录“管理用户账号”。

首先需要判断该账户是否存在,如果该账户不存在,则输出“未找到该账户”,并返回上级目录;若该账户存在,则将该账户的account值赋为0表示该账户已经被删除。

3.重置用户密码

在上级目录“管理用户账号”下选择该功能后,自动调用modifypassword函数,实现后返回清屏并返回上级目录“管理用户账号”。

首先搜索需要重置的账号,若账户不存在,则输出“未找到该账号”并返回;

找到该账户后需要两次读入新密码,若两次读入的新密码不一致,则修改失败,需要重新进行该操作,若两次读入的密码一致则表示修改成功,先存储该密码,并保存至本地txt,然后返回上级目录

4.初始化用户密码

在上级目录“管理用户账号”下选择该功能后,自动调用resetpassword函数,实现后返回清屏并返回上级目录“管理用户账号”。

初始化用户密码的作用是将所有的用户密码全部重置为初始密码123456,若需要局部初始密码,在修改账户密码界面单独修改即可。

步骤比较简单,容易理解。

0.返回上级目录

在“管理用户账号”下选择该功能后,自动返回上级目录“管理员模式主菜单界面”。

 2.修改图书信息

  1. 添加图书信息

在上级目录“修改图书信息”下选择该功能后,自动调用addbook函数,实现后返回清屏并返回上级目录“修改图书信息”。

按照格式,将书籍信息分条读入,再保存至本地txt即可

2.删除图书信息

在上级目录“修改图书信息”下选择该功能后,自动调用deletebook函数,实现后返回清屏并返回上级目录“修改图书信息”。

首先要找到该图书,然后再进行删除的操作

支持使用多种方式(共4种信息种类)查询该图书,下面仅以“标题”信息类为例,其余几种类别实现方式大致相同。

在搜索成功之后询问是否确定删除,若否则退出操作,若确定删除则将该书的各类信息赋为空,表示该图书已经被删除。

3.修改图书信息

在上级目录“修改图书信息”下选择该功能后,自动调用modifybook函数,实现后返回清屏并返回上级目录“修改图书信息”。

首先要找到该图书,然后再进行修改的操作。

支持使用多种方式(共4种信息种类)查询该图书,下面仅以“标题”信息类为例,其余几种类别实现方式大致相同。

在搜索成功之后询问是否确定修改,若否则退出操作,若确定则还需读入需要修改的信息的种类。

以下这段代码实现了上述的过程

在确定了修改信息的种类之后需要读入修改信息的结果并完成修改,即现在现行数组进行修改,再保存至本地txt。

以下这段代码实现了上述的过程

 

0.返回上一级目录 

在“修改图书信息”下选择该功能后,自动返回上级目录“管理员模式主菜单界面”。

 3.搜索图书信息

以下代码实现了调用search函数来搜索特定图书的功能,功能完成后将返回上级目录。

由于在search的功能上,管理员所需要的功能与用户的功能大致相同,所以该函数将直接跳转至用户模块的搜索函数,具体代码以及过程详解详见用户模块。

4.查看借阅情况     

以下代码实现了调用allborrowrecord函数来展现所有已经被借阅的图书的功能,功能完成后将返回上级目录。  

以下代码实现了输出借阅日志(也就是所有借阅的记录)的功能

 5.查看馆藏图书列表  

该功能可以查看本馆的所有藏书,进入该功能后,将调用showbooklist函数来展示所有书籍的信息,展示完毕后将返回上一级目录。

以下代码实现了管理员状态下所有书籍的信息的展示。

 6.查看用户列表

该功能可以查看本馆的所有用户,进入该功能后,将调用showuserlist函数来展示所有用户的信息,展示完毕后将返回上一级目录。

以下代码实现了管理员状态下所有用户的信息的展示。

0.退出登录       

该功能可以注销管理员的登录状态,返回统一登陆界面。

四、小彩蛋-开发者信息展示

以下代码将实现前往开发者信息界面

以下为开发者信息的主界面

为保护隐私,作者相关信息已做打码处理 

五、关于谬误输入性息的处理

1、switch分支的谬误输入性息处理

因为涉及到按键选择功能,所以本系统不可避免地涉及到许多分支,在这些分支的统筹上,采取switch语句来操作,但不可避免地有可能输入在允许范围之外的其他数字,此时我们设置了default语句并让程序返回该层初始状态,提示输入格式错误,并让操作者重新输入。

例如user目录下的default语句

又如管理员模式-账号设置下的default语句

再如管理员模式-书籍信息设置下的default语句

再如管理员模式的default语句

再如初始登录界面下的default语句

这些default语句保证了程序的可延续性,避免了因操作不当产生的bug使程序轻易地崩溃,从而给用户带来不好的体验。

2.关于不存在的账户、书籍信息的处理

输入的该类信息首先将被纳入搜索中,如果在记录中没有成功搜索到,将返回相关的信息,避免用户不知情而继续产生错误的操作。

如在借书过程中未能成功搜索到该书

又如在管理员模式下搜索账户时未能成功找到目标账户

再如在用户与管理员登陆时输入的账户或者密码出现问题

这种情况下,我们设置了如下的两个函数来进行判断,分别对应不同的错误类型返回不同的值,再将操作者的错误种类输出,提示操作者改正。

3.关于重置密码时的验证

设置密码时,习惯上需要输入密码与确认密码,以保证密码的绝对准确性。但由于给出了初始密码,所以该步仅需要在重置密码时完成。

如管理员修改用户密码时的确认输入密码是否准确

又如用户在重置密码时需要确认密码输入是否正确

六、关于颜色的处理

在原程序的主函数上加上如下代码可以实现变色的效果。

4、分析与总结

1.实验分析

1.本次综合实验我觉得理清思路,框架后其实并不难,与一些考数学的编程题不同,本次图书管理系统更注重将平时所学到的编程知识应用到实践中。

2.本次实验我们选择的数据结构是数组,复杂性不及链表等其他数据结构。但是对于本次所实现的相对较简单的功能来说,我认为使用数组已经游刃有余,十分简便,同时也便于维护、易于理解。

3.读写文件在本次实验中显得十分重要,为了使程序每次运行都能保留数据,需要用到<fstream>的读写文件知识。做到这点使我们初步体验到了程序员的成就感,更是这种沟通“黑屏”内外的力量给我们带来惊喜。能够在txt中做出改变,永久保存数据,而不仅仅是每次打开dev都要重置,这是一个巨大的飞跃,同时也是完成大型工程的必经之路,必备经验。

4.封装的思想是十分重要的,在本次工程编写中,会遇到许多可能有交集的、思想重复的代码,如果没有之前编写的代码的封装化与直接调用,代码量将大大加大,这对程序的实现与维护是大大不利的。同时结构体与类的大量运用,使数据与过程紧密结合,同时规范化,形式化,将相关的一类结合在一起,便于维护与代码的修改。

 2.遇到的问题

  1. 构造函数读文件时,无文件只能创建一个文件。(想要两个文件)
  2. 经常出现某个函数找不到定义,即无法关联的情况。
  3. 以头文件或cpp的形式在工程文件夹下创建的内容无法与工程文件本身产生关联,会报“无法找到该变量/函数”的错误。
  4. 修改完代码之后立即编译会很快通过,但并没有做出修改。
  5. 在新建.h或.cpp之后会出现没有办法调用的现象。

 3.解决的办法

  1. 第一个读文件时打开文件没有关闭文件。
  2. 这是dev的bug,每次修改代码后如果只编译而没有清楚则会导致出错,因此每次修改后需要清除一下或者关闭重开(因为这个问题浪费了很多时间)学习到的新知识点。
  3. 需要在dev的project左栏中右击来创建,这样才可以正确关联与正确调用。
  4. 这是dev在偷懒,此时需要点击clean来清楚已编译的数据,让dev重新编译,再次编译成功后即可操作。(摸索这一点也花了不少时间,甚至一直怀疑这是“魔法学院”的“魔法”)
  5. 这是因为main.cpp内没有#include其他的.h文件。虽然很基础但是也着实坑了我们一把,这找不到错误的感觉令人心醉。

 4. 学习到的新知识点

1.fstream读写文件

2.提取一个字符串里某个区域之间的字符串

(三级分类搜索图书时要用到)

3.system相关操作指令system(“pause”)和system(“cls”)

这些操作是必要的,在显示方面对用户比较友好。

4.“goto sign1”与“sign1:”,这种代码中跳跃的方式虽然不推荐在平时的课内学习中使用,但真的用在实践中是十分方便的。不然没法解决返回上一级目录的问题。

5.HANDLE h=GetStdHandle(STD_OUTPUT_HANDLE);实现变色的效果。 

最后附赠代码

1.main.cpp

#include<iostream>
#include"library.h"
#include"books.h"
#include"borrowrecord.h"
#include"user.h"
#include"admin.h" 
#include"login_check.h" 
#include"showlist.h"
#include <windows.h>
using namespace std;
void colour(int x)
{
	HANDLE h=GetStdHandle(STD_OUTPUT_HANDLE);
	SetConsoleTextAttribute(h,x);	
} 
library hnu;
int main(){
	colour(11); 
sign: //登录界面 
	hnu.signmenu(); 
    int signselect;//选择登录方式
	cin>>signselect;
    user a; 
	administrator b;
	string tempstr1,tempstr2; 
	switch(signselect)
    {
case 1://用户模式 
    cout<<"请输入账号:"<<endl;
    cin>>a.account;
	cout<<"请输入密码:"<<endl;
	cin>>a.password;
	cin.get(); 
	//(a.account>=20210000&&a.account<=20214999)&&a.password==hnu.userarray[a.account-20210000].password
if(hnu.login_user(a.account,a.password)==1){
    system("cls");
    cout<<"登录成功"<<endl;
	long temp_account=a.account-20210000;
userfunc:
			hnu.userarray[temp_account].usermenu();
            int userselect;//选择用户模式功能 
            cin>>userselect;
            switch(userselect)
           {
    case 1://修改密码 
    	again:
	       system("cls");
           cout<<"请输入新密码:"<<endl;
           cin>>tempstr1;
           cout<<"请确认你的新密码:"<<endl;
           cin>>tempstr2;
           if (tempstr1==tempstr2)
           {
           	hnu.userarray[temp_account].password=tempstr1;
		   }
		   else goto again;
           hnu.save();
           cout<<"修改成功"<<endl;
           system("pause");
           system("cls");
	       goto userfunc; 
	       break;
    case 2://搜索图书 
           hnu.search();
           system("pause");
           system("cls");
           goto userfunc;
	       break;
    case 3://借图书 
           hnu.borrowbook(a.account);
           system("pause");
           system("cls");
           goto userfunc;
	       break;
    case 4://还图书 
           hnu.givebook(a.account);
           system("pause");
           system("cls");
           goto userfunc;
	       break;
    case 5://查看借阅记录 
           hnu.userborrowrecord(a.account);
           system("pause");
           system("cls");
           goto userfunc;
	       break;
    case 0://退出登录 
    			cout<<"是否确认退出?"<<endl;
           		cout<<"0:取消   1:确认"<<endl;
           		int temp4;
				cin>>temp4;
				if (temp4==1)
				{
					cout<<"退出登录成功,即将返回登录界面"<<endl; 
					cout<<"欢迎下次使用"<<endl;
					system("pause"); 
           			system("cls");
           			goto sign;//返回登录界面 
				}
				else
				{
					cout<<"已取消,即将返回上一级界面"<<endl; 
					system("pause"); 
           			system("cls");
					goto userfunc;//返回第二级目录
				}
           		break; 
    default:
	       goto userfunc;
           break;
           }
           }
else if (hnu.login_user(a.account,a.password)==2){
	system("cls");
	cout<<"账号不符合格式,请重新登录"<<endl; 
	goto sign;//返回登陆界面 
    }
else if (hnu.login_user(a.account,a.password)==3){
	system("cls");
	cout<<"账号或密码错误,请重新登录"<<endl; 
	goto sign;//返回登陆界面 
    }
	break;
case 2://管理员模式 
    cout<<"请输入账号:"<<endl;
    cin>>b.account;
	cout<<"请输入密码:"<<endl;
	cin>>b.password;
	if (hnu.login_admin(b.account,b.password)==1)
	{ 
    system("cls");
    cout<<"登录成功"<<endl;
administrator_menu_func://第一级目录 
	hnu.adminarray[b.account].administratormenu();
	int adminselect;//选择管理员模式功能 
            cin>>adminselect;
            system("cls");
            switch(adminselect)
           {
           	case 1:
           		accountmenufunc://第二级目录
				hnu.adminarray[b.account].manage_accountmenu();
				int temp;
				cin>>temp;
				switch(temp) 
				{
					case 1:
						hnu.addaccount();
						system("pause");
						system("cls");
						goto accountmenufunc;//返回第二级目录 
						break;
					case 2:
						hnu.deleteaccount();
						system("pause");
						system("cls");
						goto accountmenufunc;//返回第二级目录 
						break;
					case 3:
						hnu.modifypassword();
						system("pause");
						system("cls");
						goto accountmenufunc;//返回第二级目录 
						break;
					case 4:
						hnu.resetpassword();
						system("pause");
						system("cls");
						goto accountmenufunc;//返回第二级目录 
						break;
					case 0:
						cout<<"即将返回上级目录"<<endl;
						system("pause"); 
						system("cls");
						goto administrator_menu_func;//返回第一级目录 
						break;
					default:
						cout<<"输入格式错误,请重新输入"<<endl;
						system("pause"); 
						system("cls");
						goto accountmenufunc;//返回第二级目录 
						break;
				}
				break; 
           	case 2:
           		bookmanagement://第二级目录
				hnu.adminarray[b.account].book_management_menu();
				int temp5;
				cin>>temp5;
           		switch(temp5) 
				{
					case 1:
						hnu.addbook();
						system("pause");
						system("cls");
						goto bookmanagement;//返回第二级目录 
						break;
					case 2:
						hnu.deletebook();
						system("pause");
						system("cls");
						goto bookmanagement;//返回第二级目录 
						break;
					case 3:
						hnu.modifybook();
						system("pause");
						system("cls");
						goto bookmanagement;//返回第二级目录 
						break; 
					case 0:
						cout<<"即将返回上级目录"<<endl;
						system("pause"); 
						system("cls");
						goto administrator_menu_func;//返回第一级目录 
						break;
					default:
						cout<<"输入格式错误,请重新输入"<<endl;
						system("pause"); 
						system("cls");
						goto bookmanagement;//返回第二级目录 
						break;
				}
				break; 
           	case 3:
           		hnu.search();
           		system("pause");
           		system("cls");
           		goto administrator_menu_func;//返回第一级目录 
           		break;
           	case 4:
           		hnu.allborrowrecord();
           		system("pause");
           		system("cls");
           		goto administrator_menu_func;//返回第一级目录 
           		break;
           	case 5:
           		hnu.showbooklist();
           		system("pause");
           		system("cls");
           		goto administrator_menu_func;//返回第一级目录 
           		break;
			case 6:
				hnu.showuserlist();
				system("pause");
				system("cls");
           		goto administrator_menu_func;//返回第一级目录 
				break;
           	case 0:
           		cout<<"是否确认退出?"<<endl;
           		cout<<"0:取消   1:确认"<<endl;
           		int temp3;
				cin>>temp3;
				if (temp3==1)
				{
					cout<<"退出登录成功,即将返回登录界面"<<endl; 
					system("pause"); 
           			system("cls");
           			goto sign;//返回登录界面 
				}
				else
				{
					cout<<"已取消,即将返回上级目录"<<endl; 
					system("pause"); 
           			system("cls");
					goto accountmenufunc;//返回第二级目录
				}
           		break; 
           	default:
           			cout<<"输入格式错误,请重新输入"<<endl;
					system("pause"); 
					system("cls");
					goto administrator_menu_func;//返回第一级目录 
		   }
	}
	else if (hnu.login_admin(b.account,b.password)==2)
	{
		system("cls");
		cout<<"账号不符合格式,请重新登录"<<endl; 
		goto sign;//返回登陆界面 
	}
	else if (hnu.login_admin(b.account,b.password)==3)
	{
		system("cls");
		cout<<"账号或密码错误,请重新登录"<<endl; 
		goto sign;//返回登陆界面 
	}
	break;
case 0:
	system("cls");
	hnu.developerinfor();
	system("pause");
	cout<<"即将返回上级目录"<<endl;
	system("pause");
	system("cls");
	goto sign;//返回登陆界面
default:
	cout<<"输入格式错误,请重新输入"<<endl;
	system("pause"); 
	system("cls");
	goto sign;//返回登陆界面 
	}
}

2.library.cpp

#include"library.h"
using namespace std;
//用于做显示的界面 
void library::zongmenu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.馆藏图书列表       *****"<<endl;
cout<<"***** 2.用户列表           *****"<<endl;
cout<<"***** 3.在馆记录           *****"<<endl;
cout<<"***** 4.用户借阅记录       *****"<<endl;
cout<<"***** 0.退出功能           *****"<<endl;
cout<<"********************************"<<endl;	
}

void library::checkmenu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.根据题名检索       *****"<<endl;
cout<<"***** 2.根据ISBN/ISSN检索  *****"<<endl;
cout<<"***** 3.根据作者检索       *****"<<endl;
cout<<"***** 4.根据分类号检索     *****"<<endl;
cout<<"***** 0.退出功能           *****"<<endl;
cout<<"********************************"<<endl;	
}

void library::signmenu(){
cout<<"********************************"<<endl;	
cout<<"*****欢迎来到湖南大学图书馆*****"<<endl;
cout<<"*********请选择用户模式*********"<<endl;
cout<<"********************************"<<endl;	
cout<<"********************************"<<endl;	
cout<<"*****      1.用户模式     ******"<<endl;
cout<<"*****     2.管理员模式    ******"<<endl;
cout<<"*****   0.查看开发者信息  ******"<<endl;
cout<<"********************************"<<endl;	
}

void user::usermenu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.修改密码          *****"<<endl;
cout<<"***** 2.搜索图书          *****"<<endl;
cout<<"***** 3.借图书            *****"<<endl;
cout<<"***** 4.还图书            *****"<<endl;
cout<<"***** 5.查看借阅记录      *****"<<endl;
cout<<"***** 0.退出登录          *****"<<endl;
cout<<"********************************"<<endl;
}

void library::xinxitypemenu(){
	 cout<<"****************************"<<endl;	
     cout<<"***** 1.topic          *****"<<endl;
     cout<<"***** 2.ISBN/ISSN      *****"<<endl;
     cout<<"***** 3.writer         *****"<<endl;
     cout<<"***** 4.category       *****"<<endl;
     cout<<"****************************"<<endl;
}

void administrator::administratormenu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.管理用户账号       *****"<<endl;
cout<<"***** 2.修改图书信息       *****"<<endl;
cout<<"***** 3.搜索图书信息       *****"<<endl;
cout<<"***** 4.查看借阅情况       *****"<<endl;
cout<<"***** 5.查看馆藏图书列表   *****"<<endl;
cout<<"***** 6.查看用户列表       *****"<<endl;
cout<<"***** 0.退出登录           *****"<<endl;
cout<<"********************************"<<endl;
}

void administrator::manage_accountmenu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.添加用户账号       *****"<<endl;
cout<<"***** 2.删除用户账号       *****"<<endl;
cout<<"***** 3.重置用户密码       *****"<<endl;
cout<<"***** 4.初始化用户密码     *****"<<endl;
cout<<"***** 0.返回上一级目录     *****"<<endl;
cout<<"********************************"<<endl;
}

void administrator::book_management_menu(){
cout<<"********************************"<<endl;	
cout<<"***** 1.添加图书信息       *****"<<endl;
cout<<"***** 2.删除图书信息       *****"<<endl;
cout<<"***** 3.修改图书信息       *****"<<endl;
cout<<"***** 0.返回上一级目录     *****"<<endl;
cout<<"********************************"<<endl;
}

void library::developerinfor()
{
	cout<<"*************************************************"<<endl;	
	cout<<"*****     恭喜成为第"<<1<<"位发现本系统的大佬     *****"<<endl;
	cout<<"*****       《某某大学图书馆管理系统》      *****"<<endl;
	cout<<"*****      由某某大学信息科学与工程学院     *****"<<endl;
	cout<<"*****     计科****班 某某、某某某 编写      *****"<<endl;
	cout<<"*****        某某 Eliack QQ **********      *****"<<endl;
	cout<<"*****        某某某 wolf QQ **********      *****"<<endl;
	cout<<"*****鸣谢 星空不费电 粗心大法斩IDE的波波老师*****"<<endl;
	cout<<"*****       和周二晚热心答疑某某某助教      *****"<<endl;
	cout<<"*****                                       *****"<<endl;
	cout<<"*****           感谢您的使用与支持          *****"<<endl;
	cout<<"*************************************************"<<endl;
}


3.library.h

#include<iostream>
#ifndef Library_H
#define Library_H
#include<fstream>
#define FILENAME "empFile.txt"
#define FILEname "books.txt"
#define filename "borrowrecord.txt"
#define a_acount "adminaccount.txt"
using namespace std;
class book{
      public:
	  string topic;
	  string type;
	  string writer;
	  string category;
	  int state;
	  long ownerid;
	  
};
class user{
	  public:
	  long account;
	  string password;
	  void usermenu();
	  
};

class administrator{
	  public:
	  long account;
	  string password;
	  void administratormenu();
	  void manage_accountmenu();
	  void book_management_menu();
	  
};	

class record{
	  public:
	  long ownerid;
	  string topic;
	  string writer;
	  string category; 
	  int state;
};
class library{
	  public:
	  int booksnum;
	  int recordnum;
	  int usernum;
	  int adminnum;
	  book booksarray[100000];
	  user userarray[8000];
	  administrator adminarray[100];
	  record recordarray[100000];
	  
	  //user.cpp
	  void iniuser(); 
	  void save();
	  library();
	  void iniadmin();
	  
	  //library.cpp
	  void zongmenu();
	  void checkmenu();
	  void signmenu();
	  void xinxitypemenu();
	  void allborrowrecord();
	  
	  void showbooklist();
	  void showuserlist();
	
	  //books.cpp
	  int getbooksnum();
	  void inibooks();
	  void booksave();
	  void showbook(book Book);
	  void search();
	  void borrowbook(long);
	  void givebook(long); 
	  
	  //borrowrecord.cpp
	  void userborrowrecord(long);//new
	  void recordsave(book);
	  void inirecord();
	  int getrecordnum();
	  
	  //login_check
	  int login_user(int account,string password); 
	  int login_admin(int account,string password);
	  
	  //admin.h
	  void admin_save();
	  void admin_out();
	   
	   //account
	  void addaccount();
	  void deleteaccount();
	  void modifypassword();
	  void resetpassword();
	  
	  //developerinfor
	  void developerinfor();
	  
	  //book_manage
	  void addbook();
	  void deletebook();
	  void modifybook();
	  
	  
};

  
#endif

4.books.h

#include"library.h"
#include<string>
#include<stdio.h>
#include<string.h>
using namespace std;
string match(string s,int begin,int end){
	 string temp="";
     for(int i=begin;i<end;i++){
     temp+=s[i];
     }
     return temp;
}
int library::getbooksnum(){//统计书的数量 
	ifstream ifs;
    ifs.open(FILEname,ios::in);
	string topic1;
	string type1;
	string writer1;
	string category1;
	long ownerid1;
	int state1;
	int num=0;
	while(ifs>>topic1&&ifs>>type1&&ifs>>writer1&&ifs>>category1&&ifs>>state1&&ifs>>ownerid1){
		num++;
	} 
	return num;
}
void library::inibooks() {//读文件 
	ifstream ifs;
	ifs.open(FILEname,ios::in);
	string topic1;
	string type1;
	string writer1;
	string category1;
	int state1;
	long ownerid1;
	int i = 0;
	while (ifs>>topic1&&ifs>>type1&&ifs>>writer1&&ifs>>category1&&ifs>>state1&&ifs>>ownerid1) {
		booksarray[i].topic=topic1;
		booksarray[i].type=type1;
		booksarray[i].writer=writer1;
		booksarray[i].category=category1;
		booksarray[i].state=state1;
	    booksarray[i].ownerid=ownerid1;
	i++; 
	}
	ifs.close();
	return;
}
//写文件 
void library::booksave(){
	 ofstream ofs;
	ofs.open(FILEname,ios::out);//用输出的方式打开文件--写文件 
	//将每个人的数据写入到文件中
	for (int i = 0; i<this->booksnum; i++){
		ofs<<booksarray[i].topic<<" ";
		ofs<<booksarray[i].type<<" ";
		ofs<<booksarray[i].writer<<" ";
		ofs<<booksarray[i].category<<" ";
		ofs<<booksarray[i].state<<" ";
		ofs<<booksarray[i].ownerid<<endl;
	}
	ofs.close();
}

//展示图书信息 
void library::showbook(book Book){
	  cout<<"该书的题名:"<<Book.topic<<endl;
	  cout<<"  该书的ISBN/ISNN:"<<Book.type<<endl;
	  cout<<"  该书的作者:"<<Book.writer<<endl;
	  cout<<"  该书的分类号:"<<Book.category<<endl;
	  if(Book.state==1) cout<<"  该书的借阅状况:未借出"<<endl; 
	  else if(Book.state==0){	 
	  cout<<"  该书的借阅状况:已借出"<<endl;
	  cout<<"  该书的借阅者:"<<Book.ownerid<<endl;
	  }
	  }
//搜索图书 
void library::search(){ 
searchfunc:	system("cls");
	 this->xinxitypemenu();
	 cout<<"输入信息的种类"<<endl;
	 int xinxitype;
	 cin>>xinxitype;
if(xinxitype==1){
	 cout<<"请输入题名"<<endl;
	 string topic_;
	 cin>>topic_;
	 int i=0;
	 for(;i<this->booksnum;i++){
	 if(topic_==this->booksarray[i].topic){
	 this->showbook(this->booksarray[i]);
	 return;
	 }
	 }
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==2){
	 cout<<"请输入ISBN/ISSN"<<endl;
	 string type_;
	 cin>>type_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(type_==this->booksarray[i].type){
	 this->showbook(this->booksarray[i]);
	 return;
	 }
	 }
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==3){
	 cout<<"请输入作者名"<<endl;
	 string writer_;
	 cin>>writer_;
	 int i=0;
	 int sum1=0; 
	 for(;i<=this->booksnum;i++){
	 if(writer_==this->booksarray[i].writer){
	 sum1++;
	 cout<<sum1<<".";
	 this->showbook(this->booksarray[i]);
	 }
	 }
	 if(sum1==0){
	 cout<<"找不到该作者的书籍"<<endl; 
	 return;}else return;
     }
else if(xinxitype==4){//new 
	 string onecategory_,twocategory_,threecategory_;
	 int a1,a2,a3;
	 cout<<"请输入一级分类号"<<endl;
     cin>>onecategory_;
 onesearch:int sum1=0;
	 for(int i=0;i<=this->booksnum;i++){
	 	
	    if(onecategory_[0]==this->booksarray[i].category[0]){
	    sum1++;
	    cout<<sum1<<".";
	    this->showbook(this->booksarray[i]);
	    if(sum1%10==0){
	    cout<<endl;
        cout<<"第"<<sum1/10+1<<"页已到底"<<endl;
		cout<<"1.继续下一级搜索"<<endl;
	    cout<<"2.退出搜索"<<endl; 
		cout<<"3.下一页"<<endl; 
		int select;cin>>select;
		if(select==1){a1=1;system("pause");system("cls");goto search2;} 
		if(select==2){a1=2;system("pause");system("cls");goto search2;} 
		if(select==3){system("pause");system("cls");}
	    }
	    }}
	    if(sum1==0){cout<<"没有找到书籍"<<endl;return;}
	    cout<<"1.继续搜索"<<endl;
	    cout<<"2.退出搜索"<<endl; 
	    cin>>a1;
	    
search2:   if(a1==1){
	       system("cls");
	       cout<<"请输入二级分类号"<<endl;
	       cin>>twocategory_;
	  twosearch:int sum2=0; 
	       for(int i=0;i<=this->booksnum;i++){
	       	 int end1=booksarray[i].category.find("/");
	       	 string p=match(booksarray[i].category,1,end1);
	       	 if(onecategory_[0]==this->booksarray[i].category[0]&&twocategory_==p){
	       	 sum2++;
	       	 cout<<sum2<<"."<<endl; 
	         this->showbook(this->booksarray[i]);
	         if(sum2%10==0){
	         cout<<endl;
             cout<<"第"<<sum1/10+1<<"页已到底"<<endl;
	 	     cout<<"1.继续下一级搜索"<<endl;
	 	     cout<<"2.返回上一级搜索"<<endl; 
	         cout<<"3.退出搜索"<<endl; 
	         cout<<"4.下一页"<<endl; 
		     int select;cin>>select;
		     if(select==1){a2=1;system("pause");system("cls");goto search3;} 
		     if(select==2){a2=2;system("pause");system("cls");goto search3;} 
		     if(select==3){a2=3;system("pause");system("cls");goto search3;} 
		     if(select==4){system("pause");system("cls");}
	         }
	         }}
	         if(sum2==0){cout<<"没有找到书籍"<<endl;return;}
	         cout<<"1.继续搜索"<<endl;
	         cout<<"2.返回上一级搜索"<<endl;
	         cout<<"3.退出搜索"<<endl; 
	         cin>>a2;
	           
search3:	   if(a2==1){
	           system("cls");
	           cout<<"请输入三级分类号"<<endl;
	           cin>>threecategory_;
	      threesearch:int sum3=0;
	           for(int i=0;i<=this->booksnum;i++){
	       	   int begin=booksarray[i].category.find("/")+1;
	       	   int end=booksarray[i].category.size();
	       	   string p1=match(booksarray[i].category,1,begin-1);
	       	   string p2=match(booksarray[i].category,begin,end);
	       	   if(onecategory_[0]==this->booksarray[i].category[0]&&twocategory_==p1&&threecategory_==p2){
	       	   sum3++;
	       	   cout<<1<<"."; 
	           this->showbook(this->booksarray[i]);
	           }}
	           if(sum3==0){cout<<"没有找到书籍"<<endl;return;}
	           cout<<"1.返回上一级搜索"<<endl;
	           cout<<"2.退出搜索"<<endl; 
	           cin>>a3;
	              if(a3==1) goto twosearch;
	              else if(a3==2) return;
	              else{
	              system("cls");
	              goto threesearch;
	               }
	           }else if(a2==2) goto onesearch;
			   else if(a2==3) return;
			   else{
	           system("cls");
	           goto twosearch;
	           }
	       }else if(a1==2){
	       return;
	       }else{
	       system("cls");
	       goto onesearch;
	       }
}else{
goto searchfunc; 
}}
//借图书 
void library::borrowbook(long id){
borrowfunc:	 system("cls");
	 cout<<"你要借出哪本图书?请搜索"<<endl;
	 this->xinxitypemenu();
	 cout<<"输入信息的种类"<<endl;
	 int xinxitype;
	 cin>>xinxitype;
if(xinxitype==1){
	 cout<<"请输入题名"<<endl;
	 string topic_;
	 cin>>topic_;
	 int i=0;
	 for(;i<this->booksnum;i++){
	 if(topic_==this->booksarray[i].topic){
	  cout<<"搜索成功"<<endl;
	  this->showbook(this->booksarray[i]);
	   if(this->booksarray[i].state==1){
	      cout<<"你确定要借该书吗? 借书请输入1,否则输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功借出"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksarray[i].state=0;
	      this->booksarray[i].ownerid=id; 
	      this->booksave();
	      recordarray[recordnum].ownerid=id;
	      recordarray[recordnum].topic=booksarray[i].topic;
	      recordarray[recordnum].writer=booksarray[i].writer;
	      recordarray[recordnum].category=booksarray[i].category;
	      recordarray[recordnum].state=0;
	      recordnum++;
	      this->recordsave(booksarray[i]);
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }else if(this->booksarray[i].state==0){
	   cout<<"已借出,你不可借阅"<<endl;
	   return;
	   }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==2){
	 cout<<"请输入ISBN/ISSN"<<endl;
	 string type_;
	 cin>>type_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(type_==this->booksarray[i].type){
	 cout<<"搜索成功"<<endl;
	 this->showbook(this->booksarray[i]);
	 if(this->booksarray[i].state==1){
	      cout<<"你确定要借该书吗? 借书请输入1,否则输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功借出"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksarray[i].state=0;
		  this->booksarray[i].ownerid=id; 
	      this->booksave();
	      recordarray[recordnum].ownerid=id;
	      recordarray[recordnum].topic=booksarray[i].topic;
	      recordarray[recordnum].writer=booksarray[i].writer;
	      recordarray[recordnum].category=booksarray[i].category;
	      recordarray[recordnum].state=0;
	      recordnum++;
	      this->recordsave(booksarray[i]);
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }else if(this->booksarray[i].state==0){
	   cout<<"已借出,你不可借阅"<<endl;
	 return;
	 }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==3){
writersearch:	 cout<<"请输入作者名"<<endl;
	 string writer_;
	 cin>>writer_;
	 int sum1=0;
for(int i=0;i<=this->booksnum;i++){
	 if(writer_==this->booksarray[i].writer){
	 //cout<<"搜索成功"<<endl;
	 sum1++;
	 cout<<sum1<<".";
	 this->showbook(this->booksarray[i]);
	 cout<<"  该书的编号:"<<i<<endl;
	 }
}
if(sum1==0){
	 cout<<"请输入正确的作者名"<<endl; 
	 goto writersearch;
//}else if(sum1==1){
}else{
bianhaofunc:cout<<"请输入您要借书的编号:"<<endl;
	  int bianhao;cin>>bianhao;
	  if(this->booksarray[bianhao].state==1&&this->booksarray[bianhao].writer==writer_){
	      cout<<"你确定要借书吗? 借书请输入1,否则输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功借出"<<"《"<<this->booksarray[bianhao].topic<<"》"<<endl; 
	      this->booksarray[bianhao].state=0; 
	      this->booksarray[bianhao].ownerid=id;
	      this->booksave();
	      recordarray[recordnum].ownerid=id;
	      recordarray[recordnum].topic=booksarray[bianhao].topic;
	      recordarray[recordnum].writer=booksarray[bianhao].writer;
	      recordarray[recordnum].category=booksarray[bianhao].category;
	      recordarray[recordnum].state=0;
	      recordnum++;
	      this->recordsave(booksarray[bianhao]);
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	  }else if(booksarray[bianhao].writer!=writer_){
	  cout<<"请输入正确的编号"<<endl;
	  goto  bianhaofunc;
	  }else if(this->booksarray[bianhao].state==0){
	  cout<<"已借出,你不可借阅"<<endl;
	  return;
	 }
	 }
     }
else if(xinxitype==4){
	 cout<<"请输入分类号"<<endl;
	 string category_;
	 cin>>category_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(category_==this->booksarray[i].category){
	 cout<<"搜索成功"<<endl;
	 this->showbook(this->booksarray[i]);
	 if(this->booksarray[i].state==1){
	      cout<<"你确定要借该书吗? 借书请输入1,否则输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功借出"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksarray[i].state=0; 
	      this->booksarray[i].ownerid=id;
	      this->booksave();
	      recordarray[recordnum].ownerid=id;
	      recordarray[recordnum].topic=booksarray[i].topic;
	      recordarray[recordnum].writer=booksarray[i].writer;
	      recordarray[recordnum].category=booksarray[i].category;
	      recordarray[recordnum].state=0;
	      recordnum++;
	      this->recordsave(booksarray[i]);
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      } 
	     }else if(this->booksarray[i].state==0){
	   cout<<"已借出,你不可借阅"<<endl;
	 return;
	 }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
}else{
goto borrowfunc; 
}
}
//还图书 
void library::givebook(long id){
borrowfunc:	 cout<<"你已借阅的图书:"<<endl;
	 int sum=0;
	 for(int i=0;i<this->booksnum;i++){
	 if(this->booksarray[i].ownerid==id){
	 sum++;
	 cout<<sum<<"."<<"该书的编号:"<<i<<endl; 
	 cout<<"  该书的题名:"<<this->booksarray[i].topic<<endl;
	 cout<<"  该书的ISBN/ISNN:"<<this->booksarray[i].type<<endl;
	 cout<<"  该书的作者:"<<this->booksarray[i].writer<<endl;
	 cout<<"  该书的分类号:"<<this->booksarray[i].category<<endl;
	 }}
	 if(sum==0){
	 cout<<"你还未借阅书籍"<<endl; 
	 }else{
     cout<<"请输入你所要还的书的编号:"<<endl;
     int bookid;cin>>bookid;
     cout<<"你已成功归还"<<"《"<<this->booksarray[bookid].topic<<"》"<<endl; 
     this->booksarray[bookid].state=1;
	 this->booksarray[bookid].ownerid=0;
	 this->booksave();
	 sum--;
	 if(sum>0){
	 cout<<"请问你是否需要继续归还?1-是 2-否"<<endl;
	 int select;cin>>select;
	 if(select==1)
	 goto borrowfunc;
	 else return;}
	 else return;
     } 
}

5.borrowrecord.h

#include"library.h"
using namespace std;
int library::getrecordnum(){//统计记录的数量 
	ifstream ifs;
    ifs.open(filename,ios::in);
	long ownerid1;
	string topic1;
	string writer1;
	int state1;
	string category1;
     int num=0;
	while(ifs>>ownerid1&&ifs>>topic1&&ifs>>writer1&&ifs>>category1) {
	num++;
	}
	return num;
}
void library::inirecord(){//读文件 
	ifstream ifs;
	ifs.open(filename,ios::in);
	long ownerid1;
	string topic1;
	string writer1;
	int state1;
	string category1;
     int i = 0;
	while(ifs>>ownerid1&&ifs>>topic1&&ifs>>writer1&&ifs>>category1){
		recordarray[i].ownerid=ownerid1;
		recordarray[i].topic=topic1;
		recordarray[i].writer=writer1;
		recordarray[i].category=category1; 
	    i++; 
	}
	ifs.close();
	return;
}
//写文件 
void library::recordsave(book Book){
	ofstream ofs;
	ofs.open(filename,ios::out|ios::app);//用输出的方式打开文件--写文件 
	//将每次借阅的数据写入到文件中
	    ofs<<endl;
		ofs<<Book.ownerid<<" ";
		ofs<<Book.topic<<" ";
		ofs<<Book.writer<<" ";
		ofs<<Book.category<<" ";
	    ofs.close();
}
void library::userborrowrecord(long id){//new 
	 int sum=0;
	 for(int i=recordnum-1;i>=0;i--){
	 	if(recordarray[i].ownerid==id){
	 	sum++;
	 	cout<<sum<<".";
		cout<<recordarray[i].topic<<" ";
		cout<<recordarray[i].writer<<" ";
		cout<<recordarray[i].category<<" ";
		for(int j=0;j<booksnum;j++){
	     if(recordarray[i].category==booksarray[j].category){
	     recordarray[i].state=booksarray[j].state;
	       if(recordarray[i].state==1){
		   cout<<"已归还"<<endl; 
		   break;
		  }else{cout<<"未归还"<<endl;
		  break;}
	     } 
		}
	 }
	 }
	 if (sum==0) cout<<"您未借阅任何图书"<<endl<<"即将返回上级目录"<<endl;
	 
	 return; 
}

void library::allborrowrecord()
{
	 for(int i=0;i<recordnum;i++){
	    cout<<recordarray[i].ownerid<<" ";
		cout<<recordarray[i].topic<<" ";
		cout<<recordarray[i].writer<<" ";
		cout<<recordarray[i].category<<" ";
		for(int j=0;j<booksnum;j++){
	     if(recordarray[i].category==booksarray[j].category){
	     recordarray[i].state=booksarray[j].state;}}
	       if(recordarray[i].state==1){
		   cout<<"已归还"<<endl; 
		  }else{cout<<"未归还"<<endl;}
	}
}

6.login_check.h

#include<iostream>
#include"library.h"
using namespace std;

int library::login_user(int account,string password)//用户登录处理 
{
	ifstream ifs;
	ifs.open(FILENAME, ios::in);
	long account1;
	string password1;
	while (ifs >> account1 && ifs >> password1) {
		if (account1==account)
		{
			if (password1==password) {return 1;/*账号、密码正确*/ }
			else {return 3;/*账号正确,但密码错误*/ }
		}
	}
	return 2; /*账号格式错误*/ 
	ifs.close();
}
	
int library::login_admin(int account,string password)//管理员登录处理 
{
	ifstream ifs;
	ifs.open(a_acount, ios::in);
	long account1;
	string password1;
	while (ifs >> account1 && ifs >> password1) {
		if (account1==account)
		{
			if (password1==password) {return 1;/*账号、密码正确*/ }
			else {return 3;/*账号正确,但密码错误*/ }
		}
	}
	return 2; /*账号格式错误*/ 
	ifs.close();
}

7.user.h

#include"library.h"
using namespace std;

void library::save() {//写文件 
	ofstream ofs;
	ofs.open(FILENAME, ios::out);//用输出的方式打开文件--写文件 
	//将每个人的数据写入到文件中
	for (int i = 0; i < usernum; i++) {
		ofs << userarray[i].account << " "
			<< userarray[i].password << endl;
	}
	ofs.close();
}

void library::iniuser(){//读文件 
	ifstream ifs;
	ifs.open(FILENAME, ios::in);
	long account1;
	string password1;
	int i = 0;
	while (ifs >> account1 && ifs >> password1) {
		userarray[i].account = account1;
		userarray[i].password = password1;
	i++; 
	}
	usernum=i;
	ifs.close();
	return;
}

library::library()//构造函数
{  
    booksnum=getbooksnum();
    recordnum=getrecordnum(); 
//1、文件不存在 
  int flag=0;
  ifstream ifs; 
  ifs.open(FILENAME,ios::in);
  
if(!ifs.is_open()){
	flag++;
  cout<<"文件不存在"<<endl;
  usernum=5000;
  for(int i=0;i<usernum;i++){
  long temp=20210000;
  userarray[i].account=temp+i;
  userarray[i].password="123456";
  }
  ifs.close();
  this->save(); 
}

 ifstream ifs2; 
  ifs2.open(a_acount,ios::in);
if(!ifs2.is_open()){
	flag++;
  cout<<"文件不存在"<<endl;
  for(int i=0;i<50;i++){
  long temp=0;
  adminarray[i].account=temp+i;
  adminarray[i].password="123456";
  }
  ifs2.close();
  this->admin_save(); 
}
if(flag==2) return;

文件存在且数据为空 
//char ch;
//ifs>>ch; 
//if(ifs.eof()){
//cout<<"文件为空"<<endl;
//for(int i=0;i<5000;i++){
//  long temp=20210000;
//  userarray[i].account=temp+i;
//  userarray[i].password="123456";
//  }
//this->save(); 
//ifs.close();}

//3.文件存在,并且记录数据
cout<<"读取文件"<<endl;
this->iniuser();
this->inibooks();
this->inirecord();
this->iniadmin();
}

8.admin.h

#include"library.h"
using namespace std;

void library::admin_save() {//写文件 
	ofstream ofs;
	ofs.open(a_acount, ios::out);//用输出的方式打开文件--写文件 
	//将每个人的数据写入到文件中
	for (int i = 0; i < 50; i++) {
		ofs << adminarray[i].account << " "
			<< adminarray[i].password << endl;
	}
	ofs.close();
}

void library::iniadmin(){//读admin文件 
	ifstream ifs;
	ifs.open(a_acount, ios::in);
	long account1;
	string password1;
	int i = 0;
	while (ifs >> account1 && ifs >> password1) {
		adminarray[i].account = account1;
		adminarray[i].password = password1;
	i++; 
	}
	ifs.close();
	return;
}
 
void library::addaccount()//管理员权限::添加账号 
{
	system("cls");
	usernum++;
	if (usernum>7999) //处理越界问题 
	{
		cout<<"用户规模已经达到上限,请先删除部分用户"<<endl; 
		return;
	} 
retry:
	cout<<"请输入要添加的账号:"<<endl;
    cin>>userarray[usernum-1].account;
    for (int i=0;i<=usernum-2;i++)//处理添加账户重复问题
    {
    	if (userarray[usernum-1].account==userarray[i].account){
    	cout<<"要添加的账号重复,请重新输入"<<endl;
		system("pause");
		system("cls");
		goto  retry;}
	}
	cout<<"请输入密码:"<<endl;
	cin>>userarray[usernum-1].password;
	ofstream ofs;
	ofs.open(FILENAME,ios::out|ios::app);
	ofs<<userarray[usernum-1].account;
	ofs<<" ";
	ofs<<userarray[usernum-1].password;
	ofs.close(); 
	cout<<"添加成功"<<endl;
	cout<<"即将返回上级目录"<<endl;
	return;
}
void library::deleteaccount()//管理员权限::删除账号 
{
	long temp_account;
	system("cls"); 
	cout<<"请输入要删除的账号:"<<endl;
    cin>>temp_account;
    for (int i=0;i<=usernum-1; i++)
    {
    	if (userarray[i].account==temp_account)
    	{
    		userarray[i].account=0;
    		this->save();
    		cout<<"删除成功"<<endl;
    		cout<<"即将返回上级目录"<<endl;
    		return;
		}
	}
	cout<<"未找到该账号"<<endl; 
	return;
}
void library::modifypassword()//管理员权限::修改用户密码 
{
	long temp_account;
	string temp_password,temp2_password;
	system("cls"); 
	cout<<"请输入要重置的账号:"<<endl;
    cin>>temp_account;
repasswordfunc:
    cout<<"请输入要重置的密码:"<<endl;
	cin>> temp_password;
	cout<<"请确认要重置的密码:"<<endl;
	cin>> temp2_password;
	if (temp_password!=temp2_password) 
	{
		cout<<"密码不一致,请重新输入密码"<<endl;
		system("pause");
		system("cls"); 
		goto repasswordfunc;
	}
    for (int i=0;i<=usernum-1; i++)
    {
    	if (userarray[i].account==temp_account)
    	{
    		userarray[i].password=temp_password;
    		this->save();
    		cout<<"修改成功"<<endl;
    		cout<<"即将返回上级目录"<<endl; 
			system("pause"); 
    		return;
		}
	}
	cout<<"未找到该账号"<<endl; 
	return;
}
void library::resetpassword()//管理员权限::初始化用户密码 
{
  ifstream ifs; 
  ifs.open(FILENAME,ios::in);
  for(int i=0;i<usernum;i++){
  userarray[i].password="123456";
  }
  this->save(); 
  ifs.close();
  cout<<"初始化所有用户密码成功"<<endl;
  cout<<"即将返回上级目录"<<endl;
	return;
}

void library::addbook()//管理员权限::添加书籍信息 
{
	system("cls");
	booksnum++;
	cout<<"格式:书名 ISBN/ISSN 作者 分类号"<<endl;
	cout<<"example:理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23"<<endl;
	cout<<"请输入题名(书名):"<<endl;
    cin>>booksarray[booksnum-1].topic;
	cout<<"请输入ISBN/ISSN:"<<endl;
	cin>>booksarray[booksnum-1].type;
	cout<<"请输入作者:"<<endl;
    cin>>booksarray[booksnum-1].writer;
	cout<<"请输入分类号:"<<endl;
	cin>>booksarray[booksnum-1].category;
	booksarray[booksnum-1].state=1;
	booksarray[booksnum-1].ownerid=0;
	ofstream ofs;
	ofs.open(FILEname,ios::out|ios::app);
	ofs<<booksarray[booksnum-1].topic<<" ";
	ofs<<booksarray[booksnum-1].type<<" ";
	ofs<<booksarray[booksnum-1].writer<<" ";
	ofs<<booksarray[booksnum-1].category<<" ";
	ofs<<booksarray[booksnum-1].state<<" ";
	ofs<<booksarray[booksnum-1].ownerid<<endl;
	ofs.close(); 
	cout<<"添加成功"<<endl;
	cout<<"即将返回上级目录"<<endl;
	return;
}

void library::deletebook()//管理员权限::删除书籍信息 
{    
borrowfunc:	 
	system("cls");
	 cout<<"你要删除哪本图书?请搜索"<<endl;
	 this->xinxitypemenu(); 
	 cout<<"输入信息的种类"<<endl;
	 int xinxitype;
	 cin>>xinxitype;
if(xinxitype==1){
	 cout<<"请输入题名"<<endl;
	 string topic_;
	 cin>>topic_;
	 int i=0;
	 for(;i<this->booksnum;i++){
	 if(topic_==this->booksarray[i].topic){
	  cout<<"搜索成功"<<endl;
	  this->showbook(this->booksarray[i]);
	   if(this->booksarray[i].state==1){
	      cout<<"你确定要删除该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功删除"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksarray[i].topic="";
	      this->booksarray[i].type=""; 
	      this->booksarray[i].writer=""; 
	      this->booksarray[i].category=""; 
	      this->booksarray[i].state=2;
	      this->booksarray[i].ownerid=0;  
	      this->booksave();
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==2){
	 cout<<"请输入ISBN/ISSN"<<endl;
	 string type_;
	 cin>>type_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(type_==this->booksarray[i].type){
	 cout<<"搜索成功"<<endl;
	 this->showbook(this->booksarray[i]);
	 if(this->booksarray[i].state==1){
	      cout<<"你确定要删除该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功删除"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksarray[i].topic="";
	      this->booksarray[i].type=""; 
	      this->booksarray[i].writer=""; 
	      this->booksarray[i].category=""; 
	      this->booksarray[i].state=2;
	      this->booksarray[i].ownerid=0;  
	      this->booksave();
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==3){
writersearch:	 cout<<"请输入作者名"<<endl;
	 string writer_;
	 cin>>writer_;
	 int sum1=0;
for(int i=0;i<=this->booksnum;i++){
	 if(writer_==this->booksarray[i].writer){
	 //cout<<"搜索成功"<<endl;
	 sum1++;
	 cout<<sum1<<".";
	 this->showbook(this->booksarray[i]);
	 cout<<"  该书的编号:"<<i<<endl;
	 }
}
if(sum1==0){
	 cout<<"请输入正确的作者名"<<endl; 
	 goto writersearch;
//}else if(sum1==1){
}else{
bianhaofunc:cout<<"请输入您要删除的编号:"<<endl;
	  int bianhao;cin>>bianhao;
	  if(booksarray[bianhao].writer==writer_){
	      cout<<"你确定要删除该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      cout<<"你已成功删除"<<"《"<<this->booksarray[bianhao].topic<<"》"<<endl; 
	      this->booksarray[bianhao].topic="";
	      this->booksarray[bianhao].type=""; 
	      this->booksarray[bianhao].writer=""; 
	      this->booksarray[bianhao].category=""; 
	      this->booksarray[bianhao].state=2;
	      this->booksarray[bianhao].ownerid=0;  
	      this->booksave();
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }else if(booksarray[bianhao].writer!=writer_){
	  cout<<"请输入正确的编号"<<endl;
	  goto  bianhaofunc;
	  } 
	 }
     }
}

void library::modifybook()//管理员权限::修改书籍信息 
{
borrowfunc:	 
	system("cls");
	 cout<<"你要修改哪本图书?请搜索"<<endl;
	 this->xinxitypemenu();
	 cout<<"输入信息的种类"<<endl;
	 int xinxitype;
	 cin>>xinxitype;
if(xinxitype==1){
	 cout<<"请输入题名"<<endl;
	 string topic_;
	 cin>>topic_;
	 int i=0;
	 for(;i<this->booksnum;i++){
	 if(topic_==this->booksarray[i].topic){
	  cout<<"搜索成功"<<endl;
	  this->showbook(this->booksarray[i]);
	      cout<<"你确定要修改该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
modifyfunc1: 
	      	cout<<"信息格式:"<<endl; 
	      	cout<<"example:理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23"<<endl;
	      	cout<<"请输入你要修改的信息种类"<<endl;
	      	xinxitypemenu();
	      	cout<<"*****  0.返回上级目录  *****"<<endl;
	      	cout<<"****************************"<<endl;
	      	int option;
	      	cin>>option;
	      	system("cls");
	      	switch(option)
	      	{
	      		case 1:
	      				    cout<<"请输入题名(书名):"<<endl;
					        cin>>booksarray[i].topic;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc1;
					        break;
	      		case 2:
	      			        cout<<"请输入ISBN/ISSN:"<<endl;
					        cin>>booksarray[i].type;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc1;
					        break;
	      		case 3:
	      				  	cout<<"请输入作者:"<<endl;
				      	    cin>>booksarray[i].writer;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
				      	    goto modifyfunc1;
				      	    break;
	      		case 4:
	      			        cout<<"请输入分类号:"<<endl;
					 	    cin>>booksarray[i].category;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					 	    goto modifyfunc1;
					 	    break;
				case 0:     
							cout<<"即将返回上级目录"<<endl; 
							system("pause");
							return;
				default:
							cout<<"输入格式错误,请重新输入"<<endl;
							system("pause"); 
							system("cls");
							goto modifyfunc1;
							break;		
			  }
	      cout<<"你已成功删除"<<"《"<<this->booksarray[i].topic<<"》"<<endl; 
	      this->booksave();
	      return;
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }
	 }
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==2){
	 cout<<"请输入ISBN/ISSN"<<endl;
	 string type_;
	 cin>>type_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(type_==this->booksarray[i].type){
	 cout<<"搜索成功"<<endl;
	 this->showbook(this->booksarray[i]);
	      cout<<"你确定要修改该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      modifyfunc2: 
	      	cout<<"信息格式:"<<endl; 
	      	cout<<"example:理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23"<<endl;
	      	cout<<"请输入你要修改的信息种类"<<endl;
	      	xinxitypemenu();
	      	cout<<"*****  0.返回上级目录  *****"<<endl;
	      	cout<<"****************************"<<endl;
	      	int option;
	      	cin>>option;
	      	system("cls");
	      	switch(option)
	      	{
	      		case 1:
	      				    cout<<"请输入题名(书名):"<<endl;
					        cin>>booksarray[i].topic;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc2;
					        break;
	      		case 2:
	      			        cout<<"请输入ISBN/ISSN:"<<endl;
					        cin>>booksarray[i].type;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc2;
					        break;
	      		case 3:
	      				  	cout<<"请输入作者:"<<endl;
				      	    cin>>booksarray[i].writer;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
				      	    goto modifyfunc2;
				      	    break;
	      		case 4:
	      			        cout<<"请输入分类号:"<<endl;
					 	    cin>>booksarray[i].category;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					 	    goto modifyfunc2;
					 	    break;
				case 0:     
							cout<<"即将返回上级目录"<<endl; 
							system("pause");
							return;
				default:
							cout<<"输入格式错误,请重新输入"<<endl;
							system("pause"); 
							system("cls");
							goto modifyfunc2;
							break;		
			  }
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	 }}
	 cout<<"找不到该书"<<endl; 
	 return; 
     }
else if(xinxitype==3){
writersearch:	 cout<<"请输入作者名"<<endl;
	 string writer_;
	 cin>>writer_;
	 int sum1=0;
for(int i=0;i<=this->booksnum;i++){
	 if(writer_==this->booksarray[i].writer){
	 //cout<<"搜索成功"<<endl;
	 sum1++;
	 cout<<sum1<<".";
	 this->showbook(this->booksarray[i]);
	 cout<<"  该书的编号:"<<i<<endl;
	 }
}
if(sum1==0){
	 cout<<"请重新输入修改的作者名"<<endl; 
	 goto writersearch;
//}else if(sum1==1){
}else{
bianhaofunc:cout<<"请输入您要修改的编号:"<<endl;
	  int bianhao;cin>>bianhao;
	  if(booksarray[bianhao].writer==writer_){
	      cout<<"你确定要修改该书吗? 确认请输入1,取消请输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	      modifyfunc3: 
	      	cout<<"信息格式:"<<endl; 
	      	cout<<"example:理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23"<<endl;
	      	cout<<"请输入你要修改的信息种类"<<endl;
	      	xinxitypemenu();
	      	cout<<"*****  0.返回上级目录  *****"<<endl;
	      	cout<<"****************************"<<endl;
	      	int option;
	      	cin>>option;
	      	system("cls");
	      	switch(option)
	      	{
	      		case 1:
	      				    cout<<"请输入题名(书名):"<<endl;
					        cin>>booksarray[bianhao].topic;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc3;
					        break;
	      		case 2:
	      			        cout<<"请输入ISBN/ISSN:"<<endl;
					        cin>>booksarray[bianhao].type;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc3;
					        break;
	      		case 3:
	      				  	cout<<"请输入作者:"<<endl;
				      	    cin>>booksarray[bianhao].writer;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
				      	    goto modifyfunc3;
				      	    break;
	      		case 4:
	      			        cout<<"请输入分类号:"<<endl;
					 	    cin>>booksarray[bianhao].category;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					 	    goto modifyfunc3;
					 	    break;
				case 0:     
							cout<<"即将返回上级目录"<<endl; 
							system("pause");
							return;
				default:
							cout<<"输入格式错误,请重新输入"<<endl;
							system("pause"); 
							system("cls");
							goto modifyfunc3;
							break;		
			  }
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      }
	   }else if(booksarray[bianhao].writer!=writer_){
	  cout<<"请输入正确的编号"<<endl;
	  goto  bianhaofunc;
	  } 
	 }
     }
else if(xinxitype==4){
	 cout<<"请输入分类号"<<endl;
	 string category_;
	 cin>>category_;
	 int i=0;
	 for(;i<=this->booksnum;i++){
	 if(category_==this->booksarray[i].category){
	 cout<<"搜索成功"<<endl;
	 this->showbook(this->booksarray[i]);
	 if(this->booksarray[i].state==1){
	      cout<<"你确定要修改该书吗? 确定请输入1,取消输入0"<<endl;
	      bool borrow;cin>>borrow;
	      if(borrow){
	     modifyfunc4: 
	      	cout<<"信息格式:"<<endl; 
	      	cout<<"example:理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23"<<endl;
	      	cout<<"请输入你要修改的信息种类"<<endl;
	      	xinxitypemenu();
	      	cout<<"*****  0.返回上级目录  *****"<<endl;
	      	cout<<"****************************"<<endl;
	      	int option;
	      	cin>>option;
	      	system("cls");
	      	switch(option)
	      	{
	      		case 1:
	      				    cout<<"请输入题名(书名):"<<endl;
					        cin>>booksarray[i].topic;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc4;
					        break;
	      		case 2:
	      			        cout<<"请输入ISBN/ISSN:"<<endl;
					        cin>>booksarray[i].type;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					        goto modifyfunc4;
					        break;
	      		case 3:
	      				  	cout<<"请输入作者:"<<endl;
				      	    cin>>booksarray[i].writer;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
				      	    goto modifyfunc4;
				      	    break;
	      		case 4:
	      			        cout<<"请输入分类号:"<<endl;
					 	    cin>>booksarray[i].category;
					        this->booksave();
					        cout<<"修改成功"<<endl;
							system("pause"); 
					 	    goto modifyfunc4;
					 	    break;
				case 0:     
							cout<<"即将返回上级目录"<<endl; 
							system("pause");
						    return;
				default:
							cout<<"输入格式错误,请重新输入"<<endl;
							system("pause"); 
							system("cls");
							goto modifyfunc4;
							break;		
			  }
	      }else{
	      cout<<"你已取消本次操作"<<endl; 
	      return; 
	      } 
	    }}}
	 cout<<"找不到该书"<<endl; 
	 return; 
}else{
goto borrowfunc; 
}
}   

9.showlist.h

#include"library.h"
using namespace std;

void library::showbooklist()//管理员权限::展示所有书籍信息 
{
	for (int i=0;i<=booksnum;i++)
	{
		book Book;
		Book=booksarray[i];
		if (Book.topic!="") 
		{
			cout<<"该书的题名:"<<Book.topic<<endl;
			cout<<"  该书的ISBN/ISNN:"<<Book.type<<endl;
			cout<<"  该书的作者:"<<Book.writer<<endl;
			cout<<"  该书的分类号:"<<Book.category<<endl;
			if(Book.state==1) cout<<"  该书的借阅状况:未借出"<<endl; 
			else if(Book.state==0){	 
			cout<<"  该书的借阅状况:已借出"<<endl;
			cout<<"  该书的借阅者:"<<Book.ownerid<<endl;
		}
	}
	}
	return;
}

void library::showuserlist()//管理员权限::展示所有用户信息 
{
	for (int i=0;i<=usernum;i++)
	{
		if (userarray[i].account!=0) cout<<userarray[i].account<<endl;
	}
	return;
}

10.adminaccount.txt

(这是管理员账号和密码)可以自己修改,但要注意序号和类型。

0 123456
1 123456
2 123456
3 123456
4 123456
5 123456
6 123456
7 123456
8 123456
9 123456
10 123456
11 123456
12 123456
13 123456
14 123456
15 123456
16 123456
17 123456
18 123456
19 123456
20 123456
21 123456
22 123456
23 123456
24 123456
25 123456
26 123456
27 123456
28 123456
29 123456
30 123456
31 123456
32 123456
33 123456
34 123456
35 123456
36 123456
37 123456
38 123456
39 123456
40 123456
41 123456
42 123456
43 123456
44 123456
45 123456
46 123456
47 123456
48 123456
49 123456

11.empFile.txt

(同样太多了,这里只做了一些节选,按照格式可以再加)

20210000 1234567
20210001 123456
20210002 123456
20210003 123456
20210004 123456
20210005 123456
20210006 123456
20210007 123456
20210008 123456
20210009 123456
20210010 123456
20210011 123456
20210012 123456
20210013 123456
20210014 123456
20210015 123456
20210016 123456
20210017 123456
20210018 123456
20210019 123456
20210020 123456
20210021 123456
20210022 123456
20210023 123456
20210024 123456
20210025 123456
20210026 123456
20210027 123456
20210028 123456
20210029 123456
20210030 123456
20210031 123456
20210032 123456
20210033 123456
20210034 123456
20210035 123456
20210036 123456
20210037 123456
20210038 123456
20210039 123456
20210040 123456
20210041 123456
20210042 123456
20210043 123456
20210044 123456
20210045 123456
20210046 123456
20210047 123456
20210048 123456
20210049 123456
20210050 123456
20210051 123456
20210052 123456
20210053 123456
20210054 123456
20210055 123456
20210056 123456
20210057 123456
20210058 123456
20210059 123456
20210060 123456
20210061 123456
20210062 123456
20210063 123456
20210064 123456
20210065 123456
20210066 123456
20210067 123456
20210068 123456
20210069 123456
20210070 123456
20210071 123456
20210072 123456
20210073 123456
20210074 123456
20210075 123456
20210076 123456
20210077 123456
20210078 123456
20210079 123456
20210080 123456
20210081 123456
20210082 123456
20210083 123456
20210084 123456
20210085 123456
20210086 123456
20210087 123456
20210088 123456
20210089 123456
20210090 123456
20210091 123456
20210092 123456
20210093 123456
20210094 123456
20210095 123456
20210096 123456
20214989 123456
20214990 123456
20214991 123456
20214992 123456
20214993 123456
20214994 123456
20214995 123456
20214996 123456
20214997 123456
20214998 123456
20214999 123456
0 1
20220002 1
0 1

12.books.txt

(书的部分太多了,这里只做了一些节选,按照格式可以再加)

农民工改变中国农村 978-7-213-04003-0 (爱尔兰)瑞雪·墨菲著;黄涛,王静译 F32/22 0 20210801
与卡拉扬相伴的日子 978-7-5476-0110-5 (奥)埃列特·冯·卡拉扬著;黄冰源译 K835.21/19 1 0
金融资本 978-7-5080-4179-7 (奥)鲁道夫·希法亭著;李琼译 F038.1/3 1 0
现代视野下的李斯特 978-7-81096-310-7 (奥)曼弗雷德·瓦格纳著;付天海译 K835.15/8 1 0
蒙恬 978-7-108-02978-2 (奥)斯蒂芬·茨威格著;舒昌善译 K835.655.6/8 0 20210801
最新英语口语学习词典 978-7-5605-2464-1 (澳)段立新编著 H319.9-61/2 1 0
全球金融危机下的中国 978-7-5097-1343-3 (澳)郜若素,宋立刚,胡永泰主编 F124/48 1 0
节事人力资源管理 978-7-5432-1632-7 (澳)琳恩·范·德·瓦根著;任余礼,任中玥 G241/1 1 0
信任的真相 978-7-5060-3668-9 (澳)瓦妮莎·霍尔著;宫照丽译 F830.56/4 1 0
人力资源管理 978-7-5432-1523-8 (澳)休·巴克纳尔,大滝令治著;袁庆宏等译 F241/104 1 0
分辨的和辨证的马克思主义 978-7-229-02125-2 (澳)伊安·亨特著;徐长福[等]译 B024/26 1 0
为了整合学业获得 978-7-5617-7565-3 (比)易克萨维耶·罗日叶撰著;汪凌译 G40/283 1 0
从马克思到市场 978-7-5432-1752-2 (波)W.布鲁斯,K.拉斯基著;银温泉译 F112.5/3 1 0
服务经济时代的公司价值创造 978-7-80255-279-1 (波兰)安杰伊·鹤尔满,安杰伊·厦卜乐夫 F276.6/49 1 0
给年轻人读的论语 978-7-5094-0139-2 (春秋)孔丘著;刘强编译 B222.24/6 1 0
拉贝日记 978-7-5104-0322-4 (德)埃尔文·维克特著;周娅,谭蕾译 K265.606/5 1 0
世界哲学简史 978-7-5097-1239-9 (德)奥特弗利德·赫费著;张严,唐玉屏译 B1/57 1 0
睡商 978-7-02-006989-7 (德)蒂阿·赫罗尔德,英戈·费著;强朝晖译 R163/9 1 0
数学狂想曲 7-80188-814-6 (德)福尔克·泊尔斯著;马怀琪译 O1-49/161 1 0
数学与自然科学之哲学 978-7-5428-4373-9 (德)赫尔曼·外尔著;齐民友译 O1-0/78 1 0
卡尔·威特的教育与蒙台梭利的教育与斯托夫人的教育大全集 978-7-5113-0271-7 (德)卡尔·威特,(意)蒙台梭利,(美)斯 G78/176 1 0
新教伦理与资本主义精神 978-7-80195-561-6 (德)马克斯·韦伯著;李修建,张云江译 B976.3/6 1 0
金融衍生工具 978-7-5641-2279-9 (德)米歇尔·布罗斯[等]著 F830.2/15 1 0
女人的幸福女人定 978-7-80249-206-6 (德)萨比娜·阿斯格德姆著;宋娀译 B848.4/306 1 0
纳粹德国的兴亡 978-7-01-008775-7 (德)托尔斯腾·克尔讷著;李工真译 K516.44/9 1 0
合唱队的声音训练 978-7-103-03357-9 (德)威廉·埃曼,富克劳·哈泽曼著;中国音 J616.2/17 1 0
实践理性批判 978-7-5004-7544-6 (德)伊曼努尔·康德著;张永奇译 B516.31/32 1 0
物理的玄机 978-7-5308-2186-2 (俄)贝列里门著;吴超宇,吴真贞编译 O4-49/29 1 0
趣味力学 978-7-5006-9080-1 (俄)别莱利曼著;符其珣译 O3-49/4 1 0
趣味物理学问答 978-7-5006-9081-8 (俄)别莱利曼著;李哲,王文迪译 O4-49/28 1 0
生命集 978-7-309-06710-1 (俄)果戈理著;刘季星译 I512.14/5 1 0
斯克里亚宾钢琴作品解读 978-7-80751-377-3 (俄)米哈伊尔·雅诺维斯基;张奕明,蔡泉译 J624.17/2 1 0
自由精神哲学 978-7-5426-3160-2 (俄)尼古拉·别尔嘉耶夫著;石衡潭译 B97/17 1 0
戴灰眼镜的人 978-7-309-06712-5 (俄)屠格涅夫著;刘季星译 I512.14/4 1 0
布德尔论艺术与生活 978-7-208-08596-1 (法)埃米尔·安托万·布德尔;啸声译 I565.65/13 1 0
走进法国 978-7-113-10877-9 (法)安德列·德·菲尔斯著;贾宏亮译 F156.5/1 1 0
近代德国及其历史学家 978-7-301-16809-7 (法)安托万·基扬著;黄艳红译 K095.16/1 1 0
柏辽兹画传 7-300-07580-0 (法)克劳德·巴利弗著;张黎,冯寿农译 K835.655.7/1 1 0
中国民间崇拜 978-7-5439-3960-8 (法)禄是遒著;张旭虹译 B933/21 1 0
多动症 978-7-80745-557-8 (法)米歇尔·勒桑德厄,艾黎克·高诺法尔, R748/1 1 0
论人类不平等的起源 978-7-5004-7505-7 (法)让·雅克·卢梭著;吕卓译 B565.26/16 1 0
好莱坞 978-7-208-08148-2 (法)让-卢普·布盖著;严敏,朱震芸译 J997.123/1 1 0
生态景观 978-7-5381-6062-8 (法)苏菲-巴尔波编著;艾莉森-库里佛尔英文 TU-856/33 1 0
政治与友谊 978-7-5426-3190-9 (法)托克维尔著;黄艳红译 K565.64/1 1 0
名士风流 978-7-5327-4963-8 (法)西蒙娜·德·波伏瓦著;许钧译 I565.45/49(1) 1 0
名士风流 978-7-5327-5057-3 (法)西蒙娜·德·波伏瓦著;许钧译 I565.45/49(2) 1 0
拉赫玛尼诺夫画传 978-7-300-07909-7 (法)雅克·埃马纽埃尔·富斯纳凯著;李凤译 K835.125.7/2 1 0
卡斯特罗语录 978-7-5097-1422-5 (古巴)萨洛蒙·苏希·萨尔法蒂编;宋晓平, K837.517/5 1 0
哲学的慰藉 978-7-5613-4705-8 (古罗马)波爱修斯著 B502.44/4 1 0
沉思录 978-7-5640-2191-7 (古罗马)马可·奥勒留著;李娟,杨志译 B502.43/5 1 0
神学讲演录 978-7-108-03117-4 (古罗马)纳西盎的格列高利著;石敏敏译 B972/13 1 0
九章集 978-7-5004-8097-6 (古罗马)普罗提诺著;石敏敏译 B502.44/3(1) 1 0
九章集 978-7-5004-8097-6 (古罗马)普罗提诺著;石敏敏译 B502.44/3(2) 1 0
致希腊人书 978-7-5004-8155-3 (古罗马)塔提安等著;滕琪,魏红亮译 B97/16 1 0
理想国 978-7-80179-793-3 (古希腊)柏拉图著;吴献书译 B502.232/23 1 0
政治学 978-7-5004-7833-1 (古希腊)亚里士多德(Aristotle)著;高书文 D0/158 1 0
网店人气商品页面设计技法 978-7-115-21965-7 (韩)林和延著;武传海译 F713.36/101 1 0
艺术家的街道 978-7-108-03072-6 (韩)田苑京著;李华译 I312.665/1 1 0
史记 978-7-80228-355-8 (汉)司马迁著 K204.2/27 1 0
你不知道的宇宙大爆炸 978-7-5633-6621-7 (荷)霍弗特·席林著;乔修峰译 O572/5 1 0
画家之书 978-7-5473-0115-9 (荷)卡勒尔·凡·曼德尔著;艾红华译 K835.635/7 1 0
羞涩与社交焦虑 978-7-5624-5210-2 (加)马丁·M.安东尼,(加)理查德·P.斯文 R749.7/2 1 0
操控 978-7-5387-2991-7 (加拿大)德克兰·希尔著;刘坤,单玲玲,李 G843.91/2 1 0
欧行三记 7-80195-617-6 (加拿大)宏志信 I711.65/2 1 0
平等与效率 978-7-5080-5758-3 (美)阿瑟·奥肯著;王奔洲等译 F036/1 1 0
疾痛的故事 978-7-5327-4975-1 (美)阿瑟·克莱曼著;方筱丽译 R4/36 1 0
致加西亚的信 978-7-5640-2190-0 (美)埃尔伯特·哈伯德著;罗珈译 B822.9/17 1 0
数字艺术设计基础 978-7-115-21275-7 (美)埃斯汀·伯勒,迈克尔·曼迪博格著;张 J06-39/11 1 0
统一报告 978-7-5432-1768-3 (美)艾博思,(美)迈克尔·P.克鲁斯著;赵 F270/355 1 0
焦虑症和恐惧症 978-7-5624-5349-9 (美)艾伦·T.贝克,(美)加里·埃默里,( R749.7/3 1 0
人生舞台 978-7-5428-4799-7 (美)艾萨克·阿西莫夫著;黄群,许关强译 K837.125/76 1 0
美国要案审判 978-7-5011-8781-2 (美)爱德华·W.耐普曼编;于卉芹,李忠军 D971.25/1(1) 1 0
美国要案审判 978-7-5011-8781-2 (美)爱德华·W.耐普曼编;于卉芹,李忠军 D971.25/1(2) 1 0
倾听的艺术 978-7-309-07260-0 (美)安德鲁·D·沃尔文,卡罗琳·格温·科 C912.1-49/9 1 0
人类学的四个讲座 7-300-06742-5 (美)安德鲁·斯特拉森,帕梅拉·斯图瓦德 Q98/16 1 0
希特勒的女明星 978-7-208-08630-2 (美)安特耶·阿舍得著;柳迪善,丁宁译 K835.165.7/11 1 0
最大的敌人是你自己 978-7-5104-0733-8 (美)奥里森·马登著;靳丽霞译 B848.4/304 1 0
乡村中国的权力与财富 978-7-213-04005-4 (美)白苏珊著;郎友兴,方小平译 F320.1/3 1 0
国际政治经济学 978-7-208-09221-1 (美)本杰明·J.科恩著;杨毅,钟飞腾译 F11-0/31 1 0
最佳婚礼人像摄影指南 978-7-5356-2986-9 (美)比尔·赫特尔编著;王晓路,夏雨译 J413/30 1 0
最佳家庭人像摄影指南 978-7-5356-2977-7 (美)比尔·赫特尔编著;王晓路,夏雨译 J413/31 1 0
群体人像摄影手册 978-7-5356-3246-3 (美)比尔·赫特尔编著;朱新蕊,温楠译 J413/33 1 0
专业模特摄影指南 978-7-5356-3243-2 (美)比利·皮格勒姆著;宋芳,王莲莲译 J413/34 1 0
魅态人像摆姿技巧 978-7-5356-3014-8 (美)比利·皮格勒姆著;王晓路,夏雨译 J413/35 1 0
社会统计学 978-7-5624-5253-9 (美)布莱洛克著;沈崇麟[等]译 C91-03/6 1 0
超越人像 978-7-5356-3251-7 (美)布赖恩·彼得森著;黄洁,沙景河译 J413/32 1 0
理解数码摄影 978-7-5356-3252-4 (美)布赖恩·彼得森著;黄洁,沙景河译 J41/129 1 0
自由的心 978-7-5624-4793-1 (美)布鲁斯·海曼,切莉·佩德瑞克著;陈晓 R749.99/2 1 0
赤裸裸的经济学 978-7-5086-1964-4 (美)查尔斯·惠伦著;孙稳存译 F0-49/31 1 0
钢琴笔记 978-7-80244-720-2 (美)查尔斯·罗森著;史国强译 J624.19/4 1 0
花式台球最佳开球法 978-7-5009-3599-5 (美)查理·邦德著;陈忠译 G893/2 1 0
供应链设计与管理 978-7-300-11614-3 (美)大卫·辛奇-利维,菲利普·卡明斯基, F273.4/4 1 0
人性的弱点全集 978-7-80179-884-8 (美)戴尔·卡耐基著;陈昊译 C912.1/170 1 0
美好的人生 978-7-81120-638-8 (美)戴尔·卡内基,(美)陶乐丝·卡内基著 B821-49/153 1 0
人性的弱点 978-7-81120-635-7 (美)戴尔·卡内基著;胡志刚译 C912.1/169 1 0
人性的优点 978-7-81120-637-1 (美)戴尔·卡内基著;胡志刚译 B848.4/308 1 0
快乐的人生 978-7-81120-640-1 (美)戴尔·卡内基著;霍小智译 B821-49/155 1 0
人性的光辉 978-7-81120-639-5 (美)戴尔·卡内基著;霍小智译 K837.127=41/4 1 0
伟大的人物 978-7-81120-641-8 (美)戴尔·卡内基著;周亚群译 K811/47 1 0
管理信息系统 978-7-111-29026-1 (美)戴维M.克伦克著;李北平,肖爽,董入 C931.6/33 1 0
以你之名召唤我 978-7-5309-5824-7 (美)黛安·约瑟普著 I712.45/562 1 0
服务是一种魔幻沟通 978-7-5060-3730-3 (美)黛安娜·贝伦鲍姆,汤姆·拉金著;胡涛 F274/110 1 0
失落的秘符 978-7-02-007812-7 (美)丹·布朗著;朱振武,文敏,于是译 I712.45/565 1 0
人像摄影美姿指南 978-7-115-22756-0 (美)道格·博克斯著;杨凤妍译 J413/41 1 0
西方世界的兴起 978-7-5080-5137-6 (美)道格拉斯·诺斯,(美)罗伯斯·托马斯 F150.9/6 1 0
艺用人体造型图集 978-7-5322-6595-4 (美)道格拉斯·约翰逊,莫琳·约翰逊著;朱 J064/8(1) 1 0
隐士 978-7-5617-7655-1 (美)法朗士著;梁永安译 K103/58 1 0
房龙地理 978-7-5640-2193-1 (美)房龙著;马晗,治梅译 C912.8/2 1 0
宽容 978-7-5430-4213-1 (美)房龙著;姚伟编译 B1/55 1 0
圣经的故事 978-7-5459-0187-0 (美)房龙著;张稷译 B971/23 1 0
没有标准答案的哲学问题 978-7-5011-9081-2 (美)菲尔·沃什博恩著;林克译 B/30 1 0
物理学史 978-7-300-11825-3 (美)弗·卡约里著;戴念祖译 O4-091/5 1 0
商业摄影用光指南 978-7-115-21219-1 (美)格伦·兰德著;杨煜泳译 J412.9/12 1 0
职业生涯的设计和管理 978-7-100-05246-7 (美)哈里·莱文森编著;李特朗,侯剑译 C913.2/45 1 0
音乐教育原理 978-7-81096-240-7 (美)哈罗德·艾伯利斯,查理斯·霍弗,罗 J6-4/5 1 0
逆向思考的艺术 978-7-5028-3655-9 (美)汉弗莱·B·尼尔著;丁圣元译 F830.91/64 1 0
瓦尔登湖 978-7-229-01926-6 (美)亨利·大卫·梭罗著;王金玲译 I712.64/12 1 0
大自然的基本力 978-7-5326-2827-8 (美)黄克孙著;杨建邺,龙芸译 O413/23 1 0
五星篮球训练 978-7-5009-3548-3 (美)霍华德·加芬克尔,威尔·克林编著;王 G841.2/10 1 0
西方合唱音乐概论 978-7-81096-273-5 (美)霍默·乌尔里奇著;周小静,周立潭译 J616.2/15 1 0
数学犹聊天 978-7-5428-4772-0 (美)基思·德夫林著;谈祥柏,谈欣译 O1-49/148 1 0
牛津画记 978-7-208-08562-6 (美)蒋彝著;罗漪文,罗丽如译 I712.65/33 1 0
赫特&布洛克投资管理学 978-7-300-11451-4 (美)杰弗里·A·赫特,斯坦利·B·布洛克 F830.59/40 1 0
赢 978-7-5086-1782-4 (美)杰克·韦尔奇,苏茜·韦尔奇著;余江, F471.26/4 1 0
投资生存战争 978-7-121-09927-4 (美)杰拉尔德·勒伯著;冯松译 F837.125/9 1 0
如何撰写和发表SCI期刊论文 978-7-03-021574-1 (美)金坤林著 H152.2/28 1 0
油画的光与色 978-7-5322-6817-7 (美)凯文·D.麦克弗森著;赵春园,张晓怡 J213/29 1 0
末日之书 978-7-80203-788-5 (美)康妮·威利斯著;杨蓓译 I712.45/564 1 0
存在心理学 978-7-300-11878-9 (美)科克·J·施耐德,罗洛·梅著;杨韶刚, B84-066/1 1 0
财富·红宝石 978-7-80688-475-1 (美)克莱门特·斯通等著 B848.4/316 1 0
动画设计师手册 978-7-5046-4968-3 (美)莱斯·帕德,罗斯·S·沃尔夫利著;汤 J218.7/56 1 0
B模式4.0 978-7-5428-4990-8 (美)莱斯特·R·布朗著;林自新,胡晓梅, X171.1/7 1 0
大卫·别克和他的非凡汽车 978-7-313-05463-0 (美)劳伦斯·R·古斯廷著;应韶荃[等] K837.125.38/8 1 0
行摄无疆 978-7-111-28923-4 (美)李元著 J414/17 1 0
哲学、文学和政治 978-7-5327-4869-3 (美)理查德·罗蒂著;黄宗英等译 B712.59-53/3 1 0
谁控制了教师的工作? 978-7-5617-6936-2 (美)理查德·迈·英格索著;庄瑜等译 G451/55 1 0
电影院的爆米花为什么卖得贵? 978-7-5019-7024-7 (美)理查德·麦肯齐著;鄂丽燕,王方圆译 F0-49/29 1 0
走了一位老师之后 978-7-81119-948-2 (美)理查德·派克著;赵永芬译 G632.0/90 1 0
点滴在心的处世艺术 978-7-5039-4286-0 (美)刘墉著 I712.65/32 1 0
世界经济简史 978-7-5327-4756-6 (美)龙多·卡梅伦,拉里·尼尔著;潘宁等译 F119/15 1 0
美国包装设计模板 978-7-5322-6594-7 (美)卢克·赫里奥特著;朱婕译 J524.2/13 1 0
宏观经济学 978-7-5432-1513-9 (美)罗伯特·J·巴罗著;沈志彦,陈利贤译 F015/59 1 0
经济社会的起源 978-7-5432-1741-6 (美)罗伯特·L.海尔布罗纳,(美)威廉·米 F069.9/12 1 0
下城 978-7-208-08984-6 (美)罗伯特·M·福格尔森著;周尚意,志丞, F737.12/1 1 0
管理控制系统 978-7-115-21860-5 (美)罗伯特·安东尼,维杰伊·戈文达拉扬 F234.3/35 1 0
古典素描技法 978-7-5322-6818-4 (美)罗伯特·巴雷特著;梁卿译 J214/133 1 0
法和经济学 978-7-5432-1760-7 (美)罗伯特·考特,托马斯·尤伦著;史晋川 D90-05/2 1 0
组织设计杠杆 978-7-100-06229-9 (美)罗伯特·西蒙斯著;吴雯芳译 F272.9/49 1 0
魅态人像摄影指南 978-7-5356-3245-6 (美)罗兰多·戈麦斯著;沙景湘,李继忠译 J413/36 1 0
心理学与人类困境 978-7-300-11880-2 (美)罗洛·梅著;郭本禹,方红译 B84/243 1 0
爱与意志 978-7-300-11882-6 (美)罗洛·梅著;宏梅,梁华译 B842.6/67 1 0
自由与命运 978-7-300-11902-1 (美)罗洛·梅著;杨韶刚译 B84-066/2 1 0
3-8岁儿童的数学经验 978-7-107-20424-1 (美)罗莎琳德·查尔斯沃斯著;潘月娟译 G623.5/62 1 0
生民之本 978-7-301-17235-3 (美)罗思文,安乐哲著;何金俐译 B222.2/28 1 0
幸福·月光石 978-7-80688-475-1 (美)罗伊·加恩等著 B848.4/317 1 0
反对有理 978-7-209-05200-9 (美)马克·图什内特编著;胡晓进译 D971.2/21 1 0
得意时瞧得起别人,失意时瞧得起自己 978-7-5463-1118-0 (美)马瑟·麦凯,帕瑞克·范宁著;王国平译 B848.4/309 1 0
思想与情感 978-7-5624-5274-4 (美)马修·麦克凯,(美)玛撒·戴维斯 R749.055/48 1 0
给年轻心理师的27封信 978-7-5617-7632-2 (美)玛丽·皮弗著;郭磊磊,朱荣译 R749.055/46 1 0
管理者宏观经济学 978-7-300-12262-5 (美)迈克尔·K·伊万斯著;陈彦斌,郭杰等 F015/75 1 0
西方当代手绘图案 978-7-5322-6537-4 (美)迈克尔·帕里奇著;嵇小庭,李玉玲译 J532/10 1 0
音乐之爱 978-7-80244-694-6 (美)迈克尔·斯泰因伯格,(美)拉里·洛斯 K815.76/10 1 0
设计语言 978-7-5609-5136-2 (美)麦克尔·埃瓦米著;贾秀梅译 J534.4/11 1 0
梦的意义 978-7-201-06085-9 (美)米格内·冈萨雷斯-威普乐著;王泓译 B845.1/15 1 0
如何培养孩子的社会能力 978-7-80724-737-1 (美)默娜·B.舒尔,特里萨·弗伊·迪吉若 G78/174 1 0
教育法学 978-7-300-08784-9 (美)内尔达·H·坎布朗-麦凯布 D912.104/14 1 0
波利泰里尼网球手册 978-7-5009-3316-8 (美)尼克·波利泰里尼著;陈毕欣译 G845/6 1 0
一天就能读完的《资本论》 978-7-5019-7371-2 (美)欧内斯特·乌恩特曼著;吕博译 F0-0/65 1 0
性格与文化 978-7-5426-3180-0 (美)欧文·白璧德著;孙宜学译 G04-53/4 1 0
计量经济学指南 978-7-300-12333-2 (美)皮特·肯尼迪著;陈彦斌等译 F224.0/126 1 0
不要浪费感情 978-7-5060-3772-3 (美)乔·瓦伊塔尔著;郭升荣,胡晓娇译 B821-49/163 1 0
劳动经济学 978-7-300-12238-0 (美)乔治·J·鲍哈斯著;夏业良译 F240/27 1 0
高效团队的基本模型 978-7-5060-3726-6 (美)史蒂芬·E·科恩,文森特·D·奥康奈 F272.9/45 1 0
超爆魔鬼经济学 978-7-5086-1925-5 (美)史蒂文·列维特,斯蒂芬·都伯纳著;曾 F0-49/32 1 0
调性和声及20世纪音乐概述 978-7-103-03897-0 (美)斯蒂凡·库斯特卡,多萝茜·佩恩著;杜 J614.1/13 1 0
如何成为杰克·韦尔奇 978-7-5327-4770-2 (美)斯蒂芬·H·鲍姆,戴夫·康蒂著;扈喜 F272.91/58 1 0
发展经济学 978-7-5432-1580-1 (美)斯图亚特·R.林恩著;王乃辉,倪凤佳, F061.3/28 1 0
在中国城市中争取公民权 978-7-213-04041-2 (美)苏黛瑞著;王春光,单丽卿译 D631.42/1 1 0
论摄影 978-7-5327-5004-7 (美)苏珊·桑塔格著;黄灿然译 J4/3 1 0
创新与激励 978-7-5432-1744-7 (美)苏珊娜·斯科奇姆著;刘勇译 D913.04/50 1 0
追求卓越的激情 978-7-5086-1923-1 (美)汤姆·彼得斯,南希·奥斯汀著;张秀琴 F270/357 1 0
单飞天下 978-7-208-08295-3 (美)特雷莎·威廉姆斯著;张宏浩译 K919/22 1 0
中介化 978-7-5327-4659-0 (美)托马斯·德·曾戈提塔著;王珊珊译 G206.2/23 1 0
好莱坞类型电影 978-7-208-08494-0 (美)托马斯·沙茨著;冯欣译 J997.12/6 1 0
宽容之难 978-7-01-006705-6 (美)托马斯·斯坎伦著;杨伟清,陈代东等译 D0-53/12 1 0
危机与败局 978-7-100-06756-0 (美)汪翔著 F831.59/12 1 0
没有失败的学校 978-7-81119-932-1 (美)威廉·格拉瑟著;唐晓杰译 G40/281 1 0
超越约束理论 978-7-5095-1833-5 (美)威廉·莱文森著;任建标译 F273/23 1 0
二十世纪和声学 978-7-80751-479-4 (美)文森特·佩尔西凯蒂著;黄大同,杜亚雄 J614.1/12 1 0
重屏 978-7-208-08755-2 (美)巫鸿著;文丹译 J205.2/17 1 0
猎熊记 978-7-80588-737-1 (美)西奥多·罗斯福著;董继平译 I712.64/10 1 0
北京的社会调查 978-7-80663-759-3 (美)西德尼·D.甘博著;陈愉秉[等]译 D693.79/3(1) 1 0
北京的社会调查 978-7-80663-759-3 (美)西德尼·D.甘博著;陈愉秉[等]译 D693.79/3(2) 1 0
铸造国家、城市和地区的品牌 978-7-313-06073-0 (美)西蒙·安浩著;葛岩,卢嘉杰,何俊涛译 F114/8 1 0
希利尔讲艺术史 978-7-5456-0084-1 (美)希利尔著;李爽,朱玲译 J110.9/77 1 0
秋色 978-7-80588-736-4 (美)享利·大卫·梭罗著;董继平译 I712.64/11 1 0
专业儿童人像摄影指南 978-7-5356-3244-9 (美)小罗·雅克布斯编著;王晓路,夏雨译 J413/37 1 0
Google炸弹 978-7-229-01964-8 (美)小约翰·多齐尔,苏·雪夫著;余洁,吴 D913.04/49 1 0
嗜血的尼禄 978-7-80243-318-2 (美)雅各布·艾博特原著 H319.4/1319 1 0
电子工业中的过程改进 978-7-5605-2945-5 (美)耶菲姆·法瑟,唐纳德·布雷特纳著;卫 F407.63/1 1 0
麦肯锡传奇 978-7-111-30375-6 (美)伊丽莎白·哈斯·埃德莎姆著;魏青江 F279.712/17 1 0
人类学诗学 978-7-300-11322-7 (美)伊万·布莱迪编;徐鲁亚等译 Q98/17 1 0
西方二元灵知论 978-7-208-08666-1 (美)约安·P.库里亚诺著;张湛,王伟译 B089/74 1 0
抓住每分钱 978-7-5613-4901-4 (美)约翰·D.洛克菲勒著;徐建萍译 K837.125.38/7 1 0
鸟的故事 978-7-80588-738-8 (美)约翰·巴勒斯著;董继平译 Q959.7/12 1 0
搜 978-7-5086-1895-1 (美)约翰·巴特尔著;张岩,魏平译 F279.712/16 1 0
美国电影美国文化 978-7-208-08980-8 (美)约翰·贝尔顿著;米静[等]译 J909.712/4 1 0
什么是医学史 978-7-301-16635-2 (美)约翰·伯纳姆著;颜宜葳译 R-091/58 1 0
震撼世界的十天 7-5060-2346-6 (美)约翰·里德著;郭圣铭等译 K512.51/4 1 0
法律的故事 978-7-214-02064-2 (美)约翰·麦·赞恩著;刘昕,胡凝译 D909.9/13 1 0
最后一百天 978-7-229-00344-9 (美)约翰·托兰著;刘永刚译 I712.45/563 1 0
火箭 978-7-5439-3659-1 (美)约瑟夫·A.安吉洛著;郎淑华译 V475.1/3 1 0
供应管理手册 978-7-121-10129-8 (美)约瑟夫·L·卡维纳托,安娜·E·弗林 F252/46 1 0
公司舞弊手册 978-7-81122-969-1 (美)约瑟夫·T.韦尔斯著;朱锦余主译 F276.6/53 1 0
舞弊秘档之美诱惑下的腐败 978-7-80684-837-1 (美)约瑟夫·T.威尔斯主编;孙坤,郑艳茹译 F276.6/47 1 0
经济发展理论 978-7-5004-7508-8 (美)约瑟夫·阿洛伊斯·熊彼特著;叶华译 F061.3/27 1 0
萨克斯演奏教程 978-7-103-03701-0 (美)约瑟夫·维奥拉编 J621.26/2(1) 1 0
萨克斯演奏教程 978-7-103-03704-1 (美)约瑟夫·维奥拉编 J621.26/2(2) 1 0
萨克斯演奏教程 978-7-103-03712-6 (美)约瑟夫·维奥拉编 J621.26/2(3) 1 0
萨克斯演奏教程 978-7-103-03706-5 (美)约瑟夫·维奥拉编 J621.26/2(4) 1 0
质量管理与质量控制 978-7-300-12027-0 (美)詹姆斯·R·埃文斯,威廉·M·林赛著; F273.2/54 1 0
综合物流保障手册 978-7-5047-3037-4 (美)詹姆斯·V.琼斯著;胡勇译 F252/28 1 0
教师课堂教学评价指南 978-7-5624-5356-7 (美)詹姆斯·波帕姆著;王本陆,赵婧等译 G442.1/1 1 0
DNA 978-7-208-09095-8 (美)詹姆斯·沃森,(美)安德鲁·贝瑞著; Q3-49/4 1 0
明清时代之社会经济巨变与新文化 978-7-5325-4913-9 (美)张春树,骆雪伦著;王湘云译 K825.6/462 1 0
巅峰摄影 978-7-115-22073-8 (美)珍妮·比德纳著;张靖峻译 J413/40 1 0
微生物功能基因组学 978-7-5025-9921-8 (美)周集中[等]著;张洪勋,赵立平等 Q933/8 1 0
1985年以来的当代艺术理论 978-7-5322-6524-4 (美)佐亚·科库尔,梁硕恩编;王春辰,何积 J0/97 1 0
啊哈,灵机一动 978-7-03-019586-9 (美)马丁·伽德纳著;李建臣,刘正新译 O1-49/159 1 0
园冶 978-7-5366-9966-3 (明)计成撰;胡天寿译注 TU986/5 1 0
唐诗解 978-7-81028-720-3 (明)唐汝询选释;王振汉点校 I222.742/105(1) 1 0
唐诗解 978-7-81028-720-3 (明)唐汝询选释;王振汉点校 I222.742/105(2) 1 0
徐霞客游记 978-7-5325-5519-2 (明)徐弘祖著;褚绍唐,吴应寿整理 K928.9/114 1 0
小说的语言和叙事 978-7-208-08978-5 (南非)安德烈·布林克著;汪洪章等译 I106.4/23 1 0
松壶画忆 978-7-80735-349-2 (清)钱杜著 J212/213 1 0
唐诗鼓吹评注 978-7-81028-661-9 (清)钱牧斋,(清)何义门评注;韩成武等点 I207.22/122-1 1 0
溪山卧游录 978-7-80735-350-8 (清)盛大士著 K825.72/67 1 0
陶鉴 978-7-229-01167-3 (清)朱琰,蓝浦,许之衡撰;冯雷,龙扬志译 K876.34/5 1 0
清代中国的物价与经济波动 978-7-5097-0758-6 (日)岸本美绪著;刘迪瑞译 F729.49/1 1 0
斯特林引擎模型制作 978-7-313-06434-9 (日)滨口和洋,户田富士夫,平田宏一著;曹 TK05/1 1 0
砂糖的世界史 978-7-5306-4724-0 (日)川北稔著;郑渠译 F416.82/1 1 0
抑郁症自我诊疗与全面调养 978-7-5442-4623-1 (日)春日武彦监修;李友敏译 R749.4/5 1 0
深层营销 978-7-03-020011-2 (日)大松孝弘,宇佐美清,波田浩之著;陈诚 F713.50/170 1 0
汉字文化圈的思想与宗教 978-7-307-07621-1 (日)福井文雅著;徐水生,张谷译 B222.05/55 1 0
人脉力 978-7-5430-4509-5 (日)冈岛悦子著;薛天依译 C912.1/174 1 0
从日本人的生活秘密学日语 978-7-81127-872-9 (日)高岛匡弘著 H369.4/33 1 0
中国的经济革命 978-7-214-06100-3 (日)顾琳著;王玉茹,张玮,李进霞译 F427.22/1 1 0
孤子理论中的直接方法 978-7-302-17378-6 (日)広田良吾著;王红艳[等]译 O572.3/3 1 0
现场对现场 978-7-5060-3797-6 (日)加藤治彦著;郑新超译 F273/22 1 0
景年花鸟画谱 978-7-80735-521-2 (日)今尾景年绘 J232.9/1 1 0
狡辩者请辞职 978-7-5060-3800-3 (日)酒卷九著;杨小青译 F270-49/27 1 0
G时代创业的5大定律 978-7-5357-6028-9 (日)梅田望夫著;周晓晗译 F279.313/5 1 0
高血压自我诊疗与全面调养 978-7-5442-4621-7 (日)平田恭信监修;孙兴锋译 R544.1/4 1 0
太阳经济 978-7-5060-3841-6 (日)山崎养世著;王智新,吴广义译 F407.2/1 1 0
婚活时代 978-7-209-05131-6 (日)山田昌弘,白河桃子著;郑杨译 D731.381/2 1 0
兔本幸子的插画教室 978-7-115-22688-4 (日)兔本幸子著;若雪译 J218.5/13 1 0
兔本幸子的插画教室 978-7-115-22689-1 (日)兔本幸子著;若雪译 J218.5/14 1 0
兔本幸子的插画教室 978-7-115-22687-7 (日)兔本幸子著;若雪译 J218.5/15 1 0
日本最新设计模板 978-7-102-04643-3 (日)夏井芸华编著 J06/94 1 0
日本最新设计模板 978-7-102-04642-6 (日)夏井芸华编著 J06/96 1 0
最新日本设计模板 978-7-102-04640-2 (日)夏井芸华编著 J06/95 1 0
奢侈品应该这样卖 978-7-80249-196-0 (日)岩仓正枝著;田龙姬译 F713.55/22 1 0
高级计量经济学 978-7-5642-0368-9 (日)雨宫健著;朱保华,周亚虹等译 F224.0/124 1 0
优睡眠 978-7-5381-5699-7 (日)斋藤恒博著;曹佳俊译 R163/10 1 0
《三国志演义》版本研究 978-7-5325-5628-1 (日)中川谕著;林妙燕译 I207.41/155 1 0
画出想象中的美少女 978-7-5381-6194-6 (日)主妇之友社编著;文游译 J218.2/22 1 0
图解六西格玛 978-7-121-09866-6 (日)钻石社六西格玛研究组著;孙欣欣译 F273.2/55 1 0
新编英语写作教程 978-7-5617-7288-1 (瑞典)伦纳特·比约克,(法)费德里克·雷 H315/240 1 0
法律科学 978-7-307-07291-6 (瑞典)亚历山大·佩岑尼克著;桂晓伟译 D90/170 1 0
药物粉体压缩技术 978-7-122-01577-8 (瑞士)G.阿尔德勃,C.尼斯特伦主编;崔福德 TQ460.6/5 1 0
键钮式自由低音手风琴学习教程 978-7-81096-265-0 (瑞士)爱斯贝特·莫泽尔著;曹晓青译 J624.36/2 1 0
绩效经济 978-7-5327-4853-2 (瑞士)瓦尔特·施塔尔著;诸大建,朱远等译 X196/15 1 0
哈恰图良假面舞会组曲 978-7-103-03991-5 (苏联)阿拉姆·哈恰图良曲 J657.41/63 1 0
哈恰图良童年映像钢琴曲集 978-7-103-03997-7 (苏联)阿拉姆·哈恰图良曲 J657.41/62(1) 1 0
哈恰图良童年映像钢琴曲集 978-7-103-03996-0 (苏联)阿拉姆·哈恰图良曲 J657.41/62(2) 1 0
卡巴列夫斯基24首钢琴前奏曲 978-7-103-03992-2 (苏联)德米特里·卡巴列夫斯基曲 J657.41/65 1 0
卡巴列夫斯基24首简易钢琴小品 978-7-103-03993-9 (苏联)德米特里·卡巴列夫斯基曲 J657.41/66 1 0
卡巴列夫斯基简易钢琴变奏曲 978-7-103-03994-6 (苏联)德米特里·卡巴列夫斯基曲 J657.41/67 1 0
卡巴列夫斯基简易钢琴变奏曲 978-7-103-03995-3 (苏联)德米特里·卡巴列夫斯基曲 J657.41/68 1 0
肖斯塔科维奇24首钢琴前奏曲 978-7-103-03998-4 (苏联)德米特里·肖斯塔科维奇曲 J657.41/64 1 0
肖斯塔科维奇24首前奏曲与赋格 978-7-103-04000-3 (苏联)德米特里·肖斯塔科维奇曲 J657.41/70 1 0
肖斯塔科维奇音乐小故事 978-7-103-03999-1 (苏联)德米特里·肖斯塔科维奇曲 J657.41/69 1 0
科达伊教学原理与实践 978-7-81096-314-5 (匈)爱尔佐波特·索妮著;高建进译 J6-42/3 1 0
蓝色的星球 978-7-5111-0031-3 (以)阿萨拉夫等编;陈浩等译 G634.93/3 1 0
市场结构和对外贸易 978-7-208-08335-6 (以)埃尔赫南·赫尔普曼,(美)保罗·R. F740/37 1 0
非洲的民主与发展面临的挑战 978-7-300-07995-0 (意)阿尔贝托·麦克里尼著;李福胜译 D740.09/2 1 0
达·芬奇谈艺录 978-7-81113-729-3 (意)达·芬奇著;刘祥英译 J20/24 1 0
君王论 978-7-5430-4136-3 (意)马基雅维利著;李汉昭译 D033.2/9 1 0
君主论 978-7-5004-8285-7 (意)尼科洛·马基雅弗利著;李修建译 D033.2/8 1 0
沉思课 978-7-5463-2233-9 (印)艾内斯·艾斯华伦著;高天羽译 B821-49/157 1 0
美学史 978-7-300-11827-7 (英)B.鲍桑葵著;张今译 B83-091/2 1 0
药品包装技术 7-5025-7294-5 (英)D.A.迪安,E.R.埃文斯,I.H.霍尔编 TQ460.6/6 1 0
基因治疗 978-7-5025-9991-1 (英)G.布鲁克斯著;黄尚志主译 R456/1 1 0
禁忌的功能 978-7-300-10005-0 (英)H.霭理士著;刘宏威,虞珺译 C52/183 1 0
告诉我,你怎样去生活 978-7-5327-4941-6 (英)阿加莎·克里斯蒂著;姚燚译 I561.65/13 1 0
魔幻学习100% 7-5613-3506-7 (英)阿里斯旦·史密斯著 G791-49/3 1 0
迈向正义与美德 978-7-5060-3638-2 (英)奥诺拉·奥尼尔著;应奇,陈丽微,郭立 B812.23/4 1 0
吃透法兰西 978-7-5327-4979-9 (英)彼得·梅尔著;乔艾译 I561.65/12 1 0
西方的智慧 978-7-80179-908-1 (英)伯特兰·罗素著;王岚译 B5/101 1 0
迈向新法律常识 978-7-300-11481-1 (英)博温托·迪·苏萨·桑托斯著;刘坤轮 D90-05/3 1 0
提高你的网球IQ 978-7-5009-3343-4 (英)查尔斯·阿普尔怀特著;理查德·伯格斯 G845/9 1 0
物种起源 978-7-229-01215-1 (英)查理·达尔文著;钱逊译 Q111.2/15 1 0
提高你的高尔夫IQ 978-7-5009-3324-3 (英)大卫·艾利斯,约翰·库克著;格雷姆 G849.3/4 1 0
鼓励非正式 978-7-5060-3773-0 (英)德斯·狄洛夫著;蔡蓓娟译 F279.561/1 1 0
价值投资 978-7-5476-0168-6 (英)格伦·阿诺德著;易荣华译 F830.59/39 1 0
品牌长青 978-7-113-11135-9 (英)汉密士·普林格,(英)彼得·菲尔德著 F273.2/52 1 0
不可不知的欧洲历史故事 978-7-80243-328-1 (英)亨里埃塔·伊莉莎白·马歇尔原著;改编 H319.4/1317 1 0
古代法 978-7-5004-8171-3 (英)亨利·萨姆奈·梅因著;高敏,瞿慧虹译 D909.9/12 1 0
自然之门 7-80700-080-5 (英)杰沃弗·桑普著;徐进译 N49/312 1 0
一天就能读完的《国富论》 978-7-5019-7515-0 (英)凯伦·麦克格雷迪著;吕博译 F091.33/28 1 0
一天就能读完的《巴比伦的富翁》 978-7-5019-7495-5 (英)凯伦·麦克格雷迪著;余洁译 B848.4/310 1 0
单簧管 978-7-103-03157-5 (英)科林·罗森编;章滨译 J621.4/1 1 0
运动按摩 978-7-5009-3582-7 (英)拉美拉·米尔斯,莎侬·帕克-贝内特; G804.32/1 1 0
探寻古希腊文明 978-7-100-06734-8 (英)莱斯莉·阿德金斯,罗伊·阿德金斯著; K125/19 1 0
明星法则 978-7-5086-1830-2 (英)理查德·科克著;王海舟译 F270/356 1 0
萨克斯管 978-7-103-03132-2 (英)理查德·英厄姆编;任达敏译 J621.2/1 1 0
大提琴 978-7-103-03399-9 (英)罗宾·斯托威尔主编;张蓓荔,孔维锋译 J622.3/2 1 0
思维决定成败 978-7-300-06276-1 (英)罗斯·泰勒著;梁雪,王晓霞译 B80/16 1 0
足球无疆 978-7-5011-8809-3 (英)罗文著;陈江源译 G843.92/2 1 0
论宗教宽容 978-7-100-06479-8 (英)洛克著;吴云贵译 B920/24 1 0
国际建筑设计教程 978-7-5611-4507-4 (英)洛兰·法雷利著;燕文姝,黄中浩译 TU204/22 1 0
英国历史地图 978-7-5006-8698-9 (英)马丁·吉尔伯特著;王玉菡译 K995.616/1 1 0
你如何,赚到100万美金 978-7-5060-3801-0 (英)马汀·韦伯著;刘静译 F270/361 1 0
数码特效跟我学 978-7-102-04394-4 (英)迈克尔·弗里曼著;黄彦菲译 TP391.41/373 1 0
运营管理 978-7-5092-0500-6 (英)奈杰尔·斯莱克,斯图尔特·钱伯斯 F270/351 1 0
物理定律是如何撒谎的 978-7-5428-4485-9 (英)南希·卡特赖特著;贺天平译 O41/37 1 0
荆棘之城 978-7-80742-859-6 (英)萨拉·沃特斯著;林玉葳译 I561.45/205 1 0
品格的力量 978-7-5469-0285-2 (英)塞缪尔·斯迈尔斯著;胡军霞译 B825-49/35 1 0
生物芯片技术与实践 978-7-03-027083-2 (英)史蒂夫·拉塞尔,莉萨·梅多斯,罗斯 Q78/30 1 0
图解高尔夫完全学习手册 978-7-121-09647-1 (英)史提夫·纽威尔著;林虹均译 G849.319/1 1 0
让学生突然变聪明 978-7-5041-4850-6 (英)斯蒂芬·鲍凯特著;杜铁清译 G630/37 1 0
数学史 978-7-300-11826-0 (英)斯科特著;侯德润,张兰译 O11/49 1 0
数码摄影专业教程 978-7-5006-8216-5 (英)汤姆·安编著;金马,陈铎译 J41/123 1 0
金融数量方法 978-7-5432-1503-0 (英)特里·J.沃特沙姆,基思·帕拉莫尔著 F830/90 1 0
德伯家的苔丝 978-7-80753-552-2 (英)托马斯·哈代著;酆哲生译 I561.44/66 1 0
人口原理 978-7-5613-4437-8 (英)托马斯·罗伯特·马尔萨斯著;王惠惠译 C92/41 1 0
风靡全球的心算法 978-7-81127-854-5 (英)瓦利·纳瑟著;朱凯莉译 O121.4/4 1 0
法国大革命的起源 978-7-208-08633-3 (英)威廉·多伊尔著;张弛译 K565.41/6 1 0
政治算术 978-7-5004-8552-0 (英)威廉·配第著;马妍译 C8/118 1 0
全球化与法律理论 978-7-5000-8229-3 (英)威廉·退宁著;钱向阳译 D90/169 1 0
足球经济学 978-7-5019-7370-5 (英)西蒙·库珀,史蒂芬·西曼斯基著;马睿 G843-05/1 1 0
人体绘画精解 978-7-5322-6556-5 (英)西蒙·詹宁斯著;李亮之译 J206.4/4 1 0
夏洛特·梅森家庭教育法全书 978-7-5613-4996-0 (英)夏洛特·梅森著;李忠明译 G78/175 1 0
道德情操论 978-7-80767-286-9 (英)亚当·斯密著;樊冰译 B82-095.61/4 1 0
素描与观察 978-7-112-11227-2 (英)伊恩·辛普森著;张广龙译 J214/131 1 0
世界艺术地图 978-7-208-06600-7 (英)约翰·奥尼恩斯编;冯华年[等]译 J110.9/78 1 0
就业、利息和货币通论 978-7-5004-8291-8 (英)约翰·梅纳德·凯恩斯著;陆梦龙译 F091.348/20 1 0
全能者的天机 978-7-5613-1971-0 (英)约翰·史蒂芬著 I561.55/5-1 1 0
版式设计培训教程 978-7-5322-6350-9 (英)约兰达·萨帕特拉著 TS881/46 1 0
生物信息学 7-03-012894-X (英)D.R.韦斯特海德,(英)J.H.帕里什,(英) Q811.4/5 1 0
药物化学 7-03-013241-6 (英)G.帕特里克著;孙铁民,郭春译 R914/9 1 0
基姆 7-5387-2163-0 (英国)拉迪亚德·吉卜林 I561.44/65 1 0
枞阳历史文化名人 978-7-5650-0148-2 《枞阳历史文化名人》编委会编 K820.854/3 1 0
大学物理实验 978-7-302-17105-8 《大学物理实验》编写组编著 O4-33/160 1 0
性别的故事 978-7-80724-802-6 《身边的科学·人体的奥秘》编委会编著 C913.14/60 1 0
中国最美的100传世名画 978-7-80762-711-1 《图说天下·国学书院系列》编委会编 J212.052/79 1 0
新旧会计准则差异比较与实务应用 978-7-80255-461-0 《新旧会计准则差异比较与实务应用》编写组 F279.23/74 1 0
长江史话 978-7-5000-8104-3 《中国文明史话》编委会编著 K928.42/10 1 0
和谐新天地 978-7-80751-563-0 《中华百年歌曲》编委会编 J642/57 1 0
中华人民共和国现行财政法规及优惠政策汇编 978-7-5429-2237-3 《中华人民共和国财政法》编委会编 D922.209/7 1 0
古塔史话 978-7-5000-7986-6 《中华文明史话》编委会编译 K928.75/12 1 0
故宫史话 978-7-5000-8058-9 《中华文明史话》编委会编译 K928.74/6 1 0
绘画史话 978-7-5000-8054-1 《中华文明史话》编委会编译 J209.22/2 1 0
孔庙史话 978-7-5000-8053-4 《中华文明史话》编委会编译 K917/25 1 0
丝绸史话 978-7-5000-8259-0 《中华文明史话》编委会编译 K203/267 1 0
陶器史话 978-7-5000-8260-6 《中华文明史话》编委会编译 K876.3/6 1 0
中华舞蹈志 978-7-80730-810-2 《中华舞蹈志》编辑委员会编 J709.2/12 1 0
打捞文明残骸 978-7-5472-0040-7 《走遍中国》创作组编著 K203/266 1 0
绝版古城 978-7-5472-0035-3 《走遍中国》创作组编著 K928.5/45 1 0
考古笔记 978-7-5472-0043-8 《走遍中国》创作组编著 K870.4/4 1 0
神农架野人 978-7-5472-0037-7 《走遍中国》创作组编著 Q98/15 1 0
文化奇观溯源 978-7-5472-0038-4 《走遍中国》创作组编著 K203/265 1 0
武林十大门派 978-7-5472-0042-1 《走遍中国》创作组编著 G852/29 1 0
止战之殇 978-7-5472-0039-1 《走遍中国》创作组编著 E291/6 1 0
大趋势形塑教育 978-7-5617-6808-2 OECD教育研究与创新中心著;赵中建等译 G40/284 1 0
漫画分镜头表现教程 978-7-115-22256-5 Oran猪编著 J218.2/23 1 0
国际经济学 978-7-300-12150-5 W·查尔斯·索耶,理查德·L·斯普林克著; F11-0/33 1 0
优秀教师的职场修炼手记 978-7-5617-7360-4 阿甘著 G571.2/23 1 0
听钱钟书讲文学 978-7-5613-4340-1 阿涂著 I-49/3 1 0
信息技术与体育教育专业课程整合 978-7-5651-0092-5 阿英嘎著 G807.01/7 1 0
城市文化经济学 978-7-300-12110-9 艾伦·J·斯科特著;董树宝,张宁译 F290/8 1 0
物流管理与战略 978-7-300-11612-9 艾伦·哈里森,雷姆科·范赫克著;任建标 F252/39 1 0
叙事研究 978-7-5624-4303-2 艾米娅·利布里奇,里弗卡·图沃-玛沙奇 C34/2 1 0
同林鸟 978-7-80256-068-0 艾米作品 I247.57/1333 1 0
行为主义讲演录 978-7-80244-067-8 艾其来译 B84-063/4 1 0
犯罪心理师 978-7-5039-4044-6 艾西著 I247.56/25 1 0
出口货物退(免)税政策与实务 978-7-81110-667-1 安徽省国家税务局编 F812.424/5 1 0
国家公园 978-7-5000-8156-2 安吉拉·艾朵斯等著;杨林玉译 S759.991/2 1 0
布里顿两部歌剧的研究 978-7-81096-311-4 安宁著 J832/3 1 0
动漫角色造型与场景设计教程 978-7-115-20768-5 安向艳,彭大立编著 J218.7/66 1 0
数码摄影手册 978-7-5322-6592-3 敖国兴著 J41/132 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-550-0 巴里·库珀编订 J657.415/5(1-1) 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-550-0 巴里·库珀编订 J657.415/5(1-2) 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-551-7 巴里·库珀编订 J657.415/5(2-1) 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-551-7 巴里·库珀编订 J657.415/5(2-2) 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-552-4 巴里·库珀编订 J657.415/5(3-1) 1 0
贝多芬钢琴奏鸣曲全集 978-7-80751-552-4 巴里·库珀编订 J657.415/5(3-2) 1 0
中国金文学史 978-7-80730-928-4 白冰著 K877.34/4 1 0
中国古代的农民起义 978-7-5304-1630-3 白光耀编著 K201/9 1 0
人一生要知道的经济学全集 978-7-80251-384-6 白袷编著 F0-49/43 1 0
忠诚胜于能力全集 978-7-80251-274-0 白袷编著 F272.92/165 1 0
中国画技法教学丛书 978-7-80663-674-9 白俊龙编著 J212/214 1 0
中国画技法教学丛书 978-7-80663-675-6 白俊龙编著 J212/215 1 0
中国画技法教学丛书 978-7-80663-673-2 白俊龙编著 J212/216 1 0
中国画技法教学丛书 978-7-80663-668-8 白俊龙编著 J212/217 1 0
项目采购管理 978-7-5047-2981-1 白丽君,傅培华编著 F224.5/12 1 0
历史复杂性的观念 978-7-5004-8253-6 白利鹏著 K01/23 1 0
世界著名品牌100讲 978-7-5306-5517-7 白路,高彬编著 F76/10 1 0
西方绘画大师经典作品 978-7-5330-3079-7 白仁海编著 J231/73 1 0
拿来就用的管理学 978-7-5047-3228-6 白山编著 C93-49/14 1 0
手把手教你开店、管店、转店 978-7-5639-2371-7 白山编著 F717/3 1 0
当代世界经济 978-7-300-11888-8 白远编著 F11/42 1 0
教育 978-7-80244-552-9 柏杨著 I267.1/867 1 0
秦隋论 978-7-80244-635-9 柏杨著 K233.07/2 1 0
唐朝与新罗关系史论 978-7-5004-8310-6 拜根兴著 D829.312/2 1 0
学校道德生活教育模式的探寻与思考 978-7-81130-140-3 班华,薛晓阳等著 G416/3 1 0
碰撞与交融 978-7-81096-276-6 班丽霞著 J60-05/9 1 0
企业购并教程 978-7-300-11604-4 包明华编著 F271/12 1 0
斯通 978-7-81129-166-7 薄振峰著 D90/171 1 0
文化研究精粹读本 7-300-07050-7 保罗·史密斯等著;本卷主编陶东风 G112/12 1 0
做研究型教师 978-7-5041-4439-3 鲍传友著 G420/32 1 0
数学学习的心理基础与过程 978-7-5444-2498-1 鲍建生,周超著 G447/19 1 0
中国问题 978-7-208-09151-1 北京大学国家发展研究院编 C53/332 1 0
魅力前沿·科学 7-200-05961-7 北京科技记者编辑协会编;曲国斌,杨虚杰主 N11/16 1 0
八级词汇 978-7-313-05785-3 本册主编陈书鹏 H313.1/114 1 0
上工养生话刮痧 978-7-5605-3411-4 本册主编崔承斌,范永红,周勇 R244/3 1 0
未来的战争与战法 978-7-5100-0663-0 本丛书编委会编;高蓬勃,周全,柴青川编著 E81/14 1 0
改变世界历史进程的经典战役 978-7-5100-0664-7 本丛书编委会编;王红英编著 E19/35 1 0
一触即发 978-7-5100-0667-8 本丛书编委会编;张华,范恒,张丹薇编著 E19/36 1 0
21世纪的反恐战争 978-7-5100-0669-2 本丛书编委会编;赵小芒,陈仲华,王薇编著 D815.5/7 1 0
中国艺术歌曲选 978-7-103-02602-1 本卷主编周振锡,裴传雯 J642.5/17(1) 1 0
中国艺术歌曲选 978-7-103-02602-1 本卷主编周振锡,裴传雯 J642.5/17(2) 1 0
体育项目竞赛规则汇编 978-7-5009-3590-2 本社编 G811.31/11 1 0
法律基础与HR 978-7-5628-2679-8 本书编著胡志民 D922.501/14 1 0
人事规划与实务 978-7-5628-2727-6 本书主编顾铮铮,严庆怡 D630.3/36 1 0
无边界课程 978-7-5617-7643-8 本书主编王志耀 G632.3/118 1 0
职业发展实验教程 978-7-5628-2667-5 本书主编张培德 C913.2/44 1 0
大学危机管理 978-7-5019-7425-2 本书主编赵红霞 G647/42 1 0
给穷忙族看的理财书 978-7-5635-2128-9 比尔李著 F830.59/45 1 0
评估 978-7-5624-3994-3 彼得·罗希,马克·李普希,霍华德·弗里曼 C93-03/4 1 0
线性代数同步辅导与考研指津 978-7-5628-2205-9 毕恺,尚德庆主编 O151.2/385 1 0
管理心理学 978-7-5642-0701-4 毕雪阳主编 C93-05/40 1 0
儿童心理学 978-7-5338-7859-7 边玉芳等编著 B844.1/61 1 0

再次感谢您能用心看完,如果感觉还可以,请给我点个赞,谢谢。

  • 95
    点赞
  • 149
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
面向对象技术在图书管理系统中的应用开题报告 摘要: 随着计算机技术的不断发展,图书管理系统已经成为图书馆管理的重要工具。面向对象技术是一种现代的软件开发方法,它可以提高软件的可重用性、可维护性和可扩展性。本文将探讨面向对象技术在图书管理系统中的应用,包括面向对象的分析和设计、面向对象的编程和面向对象的测试等方面。 关键词:面向对象技术;图书管理系统;分析和设计;编程;测试 一、研究背景和意义 随着信息技术的快速发展,图书馆管理已经从传统的手工管理向数字化管理转变。图书管理系统已经成为图书馆管理的重要工具。图书管理系统可以帮助图书馆实现图书的管理、借阅、归还、查询等功能,提高图书馆的管理效率和服务质量。 面向对象技术是一种现代的软件开发方法,它可以提高软件的可重用性、可维护性和可扩展性。面向对象技术将程序看作是一组对象的集合,每个对象都有自己的属性和方法。面向对象技术可以将程序分解成多个独立的对象,每个对象都可以独立地进行设计、编程和测试。面向对象技术可以提高软件的可重用性,因为每个对象都可以被多个程序共享;可以提高软件的可维护性,因为每个对象都可以独立地进行修改和测试;可以提高软件的可扩展性,因为每个对象都可以独立地进行扩展和修改。 因此,本文将探讨面向对象技术在图书管理系统中的应用,以提高图书管理系统的可重用性、可维护性和可扩展性。 二、研究内容和方法 本文将探讨面向对象技术在图书管理系统中的应用,包括面向对象的分析和设计、面向对象的编程和面向对象的测试等方面。 1. 面向对象的分析和设计 面向对象的分析和设计图书管理系统开发的重要环节。本文将介绍面向对象的分析和设计方法,包括用例图、类图、时序图等。 2. 面向对象的编程 面向对象的编程是图书管理系统开发的核心环节。本文将介绍面向对象的编程方法,包括类的定义、对象的创建、方法的调用等。 3. 面向对象的测试 面向对象的测试是图书管理系统开发的关键环节。本文将介绍面向对象的测试方法,包括单元测试、集成测试、系统测试等。 本文将采用文献资料法、实证研究法和案例分析法等方法进行研究。 三、预期成果和意义 本文将探讨面向对象技术在图书管理系统中的应用,以提高图书管理系统的可重用性、可维护性和可扩展性。本文的预期成果包括: 1. 提出面向对象技术在图书管理系统中的应用方法,包括面向对象的分析和设计、面向对象的编程和面向对象的测试等方面。 2. 设计并实现一个基于面向对象技术的图书管理系统原型,验证面向对象技术在图书管理系统中的应用效果。 本文的意义在于: 1. 探讨面向对象技术在图书管理系统中的应用,可以提高图书管理系统的可重用性、可维护性和可扩展性,为图书馆管理提供更好的服务。 2. 设计并实现一个基于面向对象技术的图书管理系统原型,可以为其他图书管理系统的开发提供参考和借鉴。 四、研究进度安排 本文的研究进度安排如下: 1. 第一阶段(2021年11月-2022年1月):文献资料收集和分析。 2. 第二阶段(2022年2月-2022年4月):面向对象的分析和设计。 3. 第三阶段(2022年5月-2022年7月):面向对象的编程。 4. 第四阶段(2022年8月-2022年10月):面向对象的测试和实验验证。 5. 第五阶段(2022年11月-2023年1月):撰写论文和答辩准备。 五、参考文献 [1] 张三. 面向对象技术在图书管理系统中的应用[J]. 计算机应用, 202, 40(10): 1-5. [2] 李四. 面向对象技术在图书管理系统中的设计与实现[D]. 北京: 北京大学, 2019. [3] 王五. 面向对象技术在图书管理系统中的应用研究[J]. 图书馆

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值