学校图书馆管理系统c++
时间: 2023-11-30 07:42:58 浏览: 51
以下是一个简单的学校图书馆管理系统的C++代码示例,其中包括添加图书、删除图书、借阅图书和归还图书等基本功能:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// 图书类
class Book {
public:
Book(string name, string author, string press, string isbn) {
this->name = name;
this->author = author;
this->press = press;
this->isbn = isbn;
this->status = true; // true表示未借出,false表示已借出
}
string getName() {
return name;
}
string getAuthor() {
return author;
}
string getPress() {
return press;
}
string getIsbn() {
return isbn;
}
bool getStatus() {
return status;
}
void setStatus(bool status) {
this->status = status;
}
private:
string name; // 书名
string author; // 作者
string press; // 出版社
string isbn; // ISBN号
bool status; // 借阅状态
};
// 图书馆类
class Library {
public:
// 添加图书
void addBook(Book book) {
books.push_back(book);
}
// 删除图书
void removeBook(string isbn) {
for (vector<Book>::iterator it = books.begin(); it != books.end(); it++) {
if (it->getIsbn() == isbn) {
books.erase(it);
break;
}
}
}
// 借阅图书
void borrowBook(string isbn) {
for (vector<Book>::iterator it = books.begin(); it != books.end(); it++) {
if (it->getIsbn() == isbn) {
if (it->getStatus()) {
it->setStatus(false);
cout << "借阅成功!" << endl;
} else {
cout << "该书已被借出!" << endl;
}
break;
}
}
}
// 归还图书
void returnBook(string isbn) {
for (vector<Book>::iterator it = books.begin(); it != books.end(); it++) {
if (it->getIsbn() == isbn) {
if (!it->getStatus()) {
it->setStatus(true);
cout << "归还成功!" << endl;
} else {
cout << "该书未被借出!" << endl;
}
break;
}
}
}
private:
vector<Book> books; // 图书列表
};
int main() {
Library library;
// 添加图书
Book book1("C++ Primer", "Lippman", "机械工业出版社", "9787111128069");
Book book2("Effective C++", "Scott Meyers", "机械工业出版社", "9787111213827");
library.addBook(book1);
library.addBook(book2);
// 借阅图书
library.borrowBook("9787111128069");
library.borrowBook("9787111128069");
// 归还图书
library.returnBook("9787111128069");
// 删除图书
library.removeBook("9787111213827");
return 0;
}
```