21xrx.com
2024-11-22 06:50:57 Friday
登录
文章检索 我的文章 写文章
C++编写图书管理系统代码
2023-07-05 11:39:55 深夜i     --     --
C++ 图书管理系统 代码 编写 程序设计

图书管理系统是一种方便图书管理的软件,可以方便地管理图书的入库、出库和借阅。在这篇文章中,我们将介绍如何使用C++编写一个基本的图书管理系统。

首先,我们需要定义一个图书类,该类用于描述图书的基本信息,如图书名称、作者、出版社、ISBN等。这个类的定义如下:


class Book {

private:

  std::string name;    // 书名

  std::string author;   // 作者

  std::string publisher; // 出版社

  std::string isbn;    // ISBN号

public:

  Book(std::string name, std::string author, std::string publisher, std::string isbn); // 构造函数

  std::string getName();

  std::string getAuthor();

  std::string getPublisher();

  std::string getISBN();

};

在图书类中,我们定义了四个私有成员变量:书名、作者、出版社和ISBN号。我们还定义了一个公有的构造函数,用于初始化这些变量。此外,我们还定义了四个公有函数,分别用于获取书名、作者、出版社和ISBN号。

接下来,我们需要定义一个图书馆类,该类用于管理图书的入库、出库和借阅。这个类的定义如下:


class Library {

private:

  std::vector<Book> books; // 所有图书

public:

  void addBook(Book book);       // 入库

  void removeBook(std::string isbn);  // 出库

  Book searchBook(std::string isbn);  // 查询

  void borrowBook(std::string isbn);  // 借阅

  void returnBook(std::string isbn);  // 归还

};

在图书馆类中,我们定义了一个私有的vector变量,用于存储所有的图书。我们还定义了五个公有函数,分别用于图书入库、出库、查询、借阅和归还。

这些函数的实现如下:


// 图书入库

void Library::addBook(Book book) {

  books.push_back(book);

}

// 图书出库

void Library::removeBook(std::string isbn) {

  for (auto it = books.begin(); it != books.end();) {

    if ((*it).getISBN() == isbn) {

      it = books.erase(it);

    } else {

      ++it;

    }

  }

}

// 图书查询

Book Library::searchBook(std::string isbn) {

  for (auto it = books.begin(); it != books.end(); ++it) {

    if ((*it).getISBN() == isbn) {

      return *it;

    }

  }

  return Book("", "", "", "");

}

// 图书借阅

void Library::borrowBook(std::string isbn) {

  for (auto it = books.begin(); it != books.end(); ++it) {

    if ((*it).getISBN() == isbn) {

      books.erase(it);

      break;

    }

  }

}

// 图书归还

void Library::returnBook(std::string isbn) {

  books.push_back(Book("", "", "", isbn));

}

这些函数中,我们使用了vector的相关方法来实现图书的入库、出库、借阅和归还。图书查询函数则是通过遍历vector并比对ISBN号来实现的。

最后,我们还需要编写一个主函数,用于测试图书管理系统的功能。这个函数的实现如下:


int main() {

  // 创建图书馆

  Library library;

  // 入库

  Book book1("The C++ Programming Language", "Bjarne Stroustrup", "Addison-Wesley Professional", "978-0321563842");

  Book book2("Effective C++", "Scott Meyers", "Addison-Wesley Professional", "978-0321334879");

  library.addBook(book1);

  library.addBook(book2);

  // 查询

  std::cout << library.searchBook("978-0321563842").getName() << std::endl;

  // 借阅

  library.borrowBook("978-0321334879");

  // 归还

  library.returnBook("978-0321334879");

  // 出库

  library.removeBook("978-0321563842");

  return 0;

}

在主函数中,我们创建了一个图书馆对象,并对图书进行了入库、查询、借阅和归还等操作。通过这些操作,我们可以测试我们的图书管理系统是否正常工作。

以上就是使用C++编写图书管理系统的代码和实现方法。当然,这只是一个基本的示例程序,实际的图书管理系统肯定需要更为复杂和完善的功能和实现方式。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复