C++版图书管理系统

 更新时间:2022年03月12日 10:58:15   作者:虫洞空间  
这篇文章主要为大家详细介绍了C++版图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了C++版图书管理系统的具体代码,供大家参考,具体内容如下

使用介绍

图书管理系统源码由两部分组成,第一部分book.h头文件,第二部分book.cpp源文件。复制代码时需注意将book.h文件的源码单独放在一个一个文件里,文件名必须为book.h。源码文件也需放在一个单独的.cpp文件里。

book.h头文件

#include<iostream>
#include<string>
#include<stdlib.h>
#include<conio.h>
using namespace std;

//会员类
class VIP
{
public:
    int vnum;    //会员号
    string name;    //会员姓名
    int num;        //图书编号
    string bookName;  //书名
    string author;    //作者
    string press;    //出版社
    VIP *next;    //指针
};

//图书结点类
class Node
{
public:
    int num;        //图书编号
    string bookName;  //书名
    string author;    //作者
    string press;    //出版社
    Node *next;        //指针
};
VIP vip[100];
Node book[100];

void add();    //增加图书函数
void Output(Node p);    //输出图书信息函数
int LookupBook();    //通过书名查找
void LookupAuthor();    //通过作者名查找
int LookupNum();        //通过编号查找
void LookupPress();    //通过出版社查找
void addVIP();        //增加会员函数
void OutputVIP(VIP s);        //输出会员信息函数
int LookupNumVIP();        //按编号查询会员
void LookupNameVIP();        //按会员姓名查找会员
void DeleteVIPbook();        //删除会员借书信息
void Delete();        //删除会员函数
void Query();        //根据会员编号查询借书信息
void Return();        //还书函数
void Borrow();        //图书借阅函数
void Index();        //首页
void BookInterface();        //图书管理界面
void VIPInterface();        //会员管理界面
void DeleteBook();    //删除图书函数
void LookupBookIn();    //图书查询页面
void LookupVIPIn();//会员查询页面

book.cpp源文件

#include"book.h"
    
int main()
{
    Index();   //首页函数
    return 0;
}

//增加图书函数
void add()
{
    for(int i=0;i<100;i++){
        if(book[i].num==0){
            cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入图书编号:";
            cin>>book[i].num;
            cout<<endl;
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入书名:";
            cin>>book[i].bookName;
            cout<<endl;
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入作者:";
            cin>>book[i].author;
            cout<<endl;
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入出版社:";
            cin>>book[i].press;
            cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"图书添加成功"<<"\n"<<endl;
            break;
        }
    }
    return;
}

//删除图书函数
void DeleteBook(){
    int b=LookupNum();
    book[b].author='\0';
    book[b].bookName='\0';
    book[b].num=0;
    book[b].press='\0';
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"图书删除成功"<<endl;
}

//输出图书信息函数
void Output(int b){
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"图书编号:"<<book[b].num<<"    书名:"<<book[b].bookName<<"    作者:"<<book[b].author<<"    出版社:"<<book[b].press<<"\n"<<endl;
}

//通过书名查找
int LookupBook(){
    int j=0;
    string bookname;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入书名:";
    cin>>bookname;
    for(int i=0;i<100;i++){
        if(book[i].bookName==bookname){
            j=1;
            Output(i);
            return i;
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该图书"<<"\n"<<endl;
    }
    return 1000;
}

//通过作者名查找
void LookupAuthor(){
    int j=0;
    string author;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入作者姓名:";
    cin>>author;
    for(int i=0;i<100;i++){
        if(book[i].author==author){
            j=1;
            Output(i);
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该图书"<<"\n"<<endl;
    }
}

//通过编号查找
int LookupNum(){
    int j=0;
    int num;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入图书编号:";
    cin>>num;
    for(int i=0;i<100;i++){
        if(book[i].num==num){
            j=1;
            Output(i);
            return i;
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该图书"<<"\n"<<endl;
    }
    return 1000;
}

//通过出版社查找
void LookupPress(){
    int j=0;
    string press;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入图书出版社:";
    cin>>press;
    for(int i=0;i<100;i++){
        if(book[i].press==press){
            j=1;
            Output(i);
            break;
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该图书"<<"\n"<<endl;
    }
}

//增加会员函数
void addVIP(){
    for(int i=0;i<100;i++){
        if(vip[i].vnum==0){
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入会员编号:";
            cin>>vip[i].vnum;
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入会员名:";
            cin>>vip[i].name;
            cout<<"\t"<<"\t"<<"\t"<<"\t"<<"会员添加成功"<<"\n"<<endl;
            break;
        }
    }
}

//输出会员信息函数
void OutputVIP(int s){
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"会员编号:"<<vip[s].vnum<<"    会员姓名:"<<vip[s].name<<"\n"<<endl;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"图书编号:"<<vip[s].num<<"    书名:"<<vip[s].bookName<<"    作者:"<<vip[s].author<<"    出版社:"<<vip[s].press<<endl;
}
//按编号查询会员
int LookupNumVIP(){
    int j=0;
    int num;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入会员编号:";
    cin>>num;
    for(int i=0;i<100;i++){
        if(vip[i].vnum==num){
            OutputVIP(i);
            j=1;
            return i;
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该会员"<<"\n"<<endl;
    }
    return 1000;
}

//按会员姓名查找会员
void LookupNameVIP(){
    int j=0;
    string name;
    cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入会员姓名:";
    cin>>name;
    for(int i=0;i<100;i++){
        if(vip[i].name==name){
            j=1;
            OutputVIP(i);
            break;
        }
    }
    if(j==0){
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"没有该会员"<<"\n"<<endl;
    }
}

//删除会员借书信息
void DeleteVIPbook(){
    int s=LookupNumVIP();
    vip[s].author='\0';
    vip[s].bookName='\0';
    vip[s].num=0;
    vip[s].press='\0';
}

//删除会员函数
void Delete(){
    int s=LookupNumVIP();
    vip[s].name='\0';
    vip[s].vnum=0;
    vip[s].author='\0';
    vip[s].bookName='\0';
    vip[s].num=0;
    vip[s].press='\0';
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"会员删除成功"<<endl;
}

//根据会员编号查询借书信息
void Query(){
    LookupNumVIP();
}

//还书函数
void Return(){
        DeleteVIPbook();
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"图书归还成功"<<"\n"<<endl;
}

//图书借阅函数
void Borrow(){
    int b=LookupBook();
    int s=LookupNumVIP();
        vip[s].bookName=book[b].bookName;
        vip[s].author=book[b].author;
        vip[s].num=book[b].num;
        vip[s].press=book[b].press;
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"借书成功"<<"\n"<<endl;
}

//首页
void Index(){
    int i;
    system("cls");
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****           图书管理系统         ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  1、图书管理      2、会员管理  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<"\n"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请选择:";
          cin>>i;
          switch(i){
            case 1:
                BookInterface();
                break;
            case 2:
                VIPInterface();
                break;
            default:
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入1或2"<<"\n"<<endl;
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                Index();
          }
}

//图书管理界面
void BookInterface(){
    system("cls");
    int i;
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****          图书管理系统          ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  1、增加图书      2、查询图书  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  3、图书借阅      4、图书归还  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  5、删除图书      6、返回首页  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<"\n"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请选择:";
          cin>>i;
          switch(i){
            case 1:
                add();    //增加图书函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                BookInterface();
                break;
            case 2:
                LookupBookIn();    //图书查询页面
                break;
            case 3:
                Borrow();        //图书借阅函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                BookInterface();
                break;
            case 4:
                Return();        //还书函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                BookInterface();
                break;
            case 5:
                DeleteBook();    //删除图书函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                BookInterface();
                break;
            case 6:
                Index();
            default:
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入对应编号"<<"\n"<<endl;
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                BookInterface();
          }
}

//会员管理界面
void VIPInterface(){
    system("cls");
    int i;
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****           图书管理系统         ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  1、增加会员      2、查询会员  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  3、借书信息      4、删除会员  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****          5、返回首页           ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<"\n"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请选择:";
          cin>>i;
          switch(i){
            case 1:
                addVIP();        //增加会员函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                VIPInterface();
                break;
            case 2:
                LookupVIPIn();  //会员查询页面
                break;
            case 3:
                Query();        //根据会员编号查询借书信息
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                VIPInterface();
                break;
            case 4:
                Delete();        //删除会员函数
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                VIPInterface();
                break;
            case 5:
                Index();
                break;
            default:
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入对应编号"<<"\n"<<endl;
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                VIPInterface();
          }
}

//图书查询页面
void LookupBookIn(){
    system("cls");
    int i;
    cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"**************************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****               图书管理系统               ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"**************************************************"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                          ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  1、图书编号查询      2、书名查询        ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                          ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  3、图书作者查询      4、图书出版社查询  ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                          ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****  5、返回上一页        6、返回首页        ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                          ****"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"**************************************************"<<"\n"<<endl;
          cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请选择:";
          cin>>i;
          switch(i){
            case 1:
                LookupNum();    //通过编号查找
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                LookupBookIn();
                break;
            case 2:
                LookupBook();    //通过书名查找
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                LookupBookIn();
                break;
            case 3:
                LookupAuthor();    //通过作者名查找
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                LookupBookIn();
                break;
            case 4:
                LookupPress();    //通过出版社查找
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                LookupBookIn();
                break;
            case 5:
                BookInterface();    //图书管理界面
                break;
            case 6:
                Index();
                break;
            default:
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入对应编号"<<"\n"<<endl;
                cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                system("pause");
                LookupBookIn();
          }
}

//会员查询页面
void LookupVIPIn(){
        int i;
        system("cls");
        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****           图书管理系统         ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****      1、通过编号查找会员       ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****      2、通过姓名查找会员       ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****      3、返回上一页             ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****                                ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****      4、返回首页               ****"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"****************************************"<<"\n"<<endl;
              cout<<"\t"<<"\t"<<"\t"<<"\t"<<"请选择:";
              cin>>i;
               switch(i){
                    case 1:
                        LookupNumVIP();        //按编号查询会员
                        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                        system("pause");
                        LookupVIPIn();
                        break;
                    case 2:
                        LookupNameVIP();        //按会员姓名查找会员
                        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                        system("pause");
                        LookupVIPIn();
                        break;
                    case 3:
                        VIPInterface();    //会员管理界面
                        break;
                    case 4:
                        Index();
                        break;
                    default:
                        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t"<<"请输入对应编号"<<"\n"<<endl;
                        cout<<"\n"<<"\t"<<"\t"<<"\t"<<"\t";
                        system("pause");
                        LookupVIPIn();
          }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • C++中用两个标准容器stack,实现一个队列的方法详解

    C++中用两个标准容器stack,实现一个队列的方法详解

    本篇文章是对C++中使用两个标准容器stack,实现一个队列的方法进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • 深入探讨Linux静态库与动态库的详解(一看就懂)

    深入探讨Linux静态库与动态库的详解(一看就懂)

    本篇文章是对Linux静态库与动态库进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C语言每日练习之乒乓球比赛问题

    C语言每日练习之乒乓球比赛问题

    这篇文章主要为大家详细介绍了C语言实现乒乓球比赛,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • C++ Cartographer源码中关于Sensor的数据走向深扒

    C++ Cartographer源码中关于Sensor的数据走向深扒

    这篇文章主要介绍了C++ Cartographer源码中关于Sensor的数据走向,整个Cartographer源码阅读是很枯燥的, 但绝对是可以学到东西的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-03-03
  • C++实现汉诺塔算法经典实例

    C++实现汉诺塔算法经典实例

    这篇文章主要介绍了C++实现汉诺塔算法经典实例,代码简洁高效,对于学习算法的朋友有一定的借鉴价值,需要的朋友可以参考下
    2014-07-07
  • C语言驱动开发之内核通过PEB获取进程参数

    C语言驱动开发之内核通过PEB获取进程参数

    PEB结构(Process Envirorment Block Structure)其中文名是进程环境块信息。本文将通过PEB实现获取进程参数,感兴趣的小伙伴可以了解一下
    2022-10-10
  • C++实现softmax函数的面试经验

    C++实现softmax函数的面试经验

    这篇文章主要为大家介绍了C++实现softmax函数的面试经验,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • 详解OpenMP的线程同步机制

    详解OpenMP的线程同步机制

    在本篇文章当中主要给大家介绍 OpenMP 当中线程的同步和互斥机制,在 OpenMP 当中主要有三种不同的线程之间的互斥方式。下面就来和大家来讨论一下OpenMP当中的互斥操作,需要的可以参考一下
    2023-01-01
  • C++深度探索虚函数覆盖示例

    C++深度探索虚函数覆盖示例

    虚函数主要通过V-Table虚函数表来实现,该表主要包含一个类的虚函数的地址表,可解决继承、覆盖的问题,下面这篇文章主要给大家介绍了如何通过一篇文章带你掌握C++虚函数的来龙去脉,需要的朋友可以参考下
    2022-12-12
  • 深入解析C中的数值与真假

    深入解析C中的数值与真假

    本篇文章是对C中数值与真假进行了详细的分析介绍,需要的朋友参考下
    2013-05-05

最新评论