删除图书信息c++代码
时间: 2023-10-02 08:06:05 浏览: 92
好的,以下是一个简单的C++代码示例,用于删除指定的图书信息。假设所有的图书信息都存储在一个数组中,数组中每个元素都是一个结构体,包含图书的不同属性,例如图书编号、图书名称、作者、出版社、价格等等。
```
#include <iostream>
using namespace std;
// 定义图书结构体
struct Book {
int id; // 图书编号
string name; // 图书名称
string author; // 作者
string publisher; // 出版社
double price; // 价格
};
// 假设books是一个包含所有图书信息的数组
// n是该数组的长度
void deleteBook(Book books[], int& n, int id) {
for (int i = 0; i < n; i++) {
if (books[i].id == id) {
// 找到需要删除的图书
for (int j = i; j < n - 1; j++) {
// 将后面的图书依次向前移动一个位置
books[j] = books[j+1];
}
// 最后一个位置设为0,删除该图书
books[n-1].id = 0;
books[n-1].name = "";
books[n-1].author = "";
books[n-1].publisher = "";
books[n-1].price = 0.0;
n--; // 数组长度减1
cout << "删除成功!" << endl;
return;
}
}
cout << "未找到该图书!" << endl;
}
int main() {
// 假设这里有一个包含所有图书信息的数组books,长度为5
Book books[5] = {
{1, "C++ Primer", "Lippman", "China Machine Press", 99.0},
{2, "Effective C++", "Meyers", "Pearson Education", 68.8},
{3, "Thinking in Java", "Eckel", "Prentice Hall", 88.0},
{4, "The C Programming Language", "K&R", "Prentice Hall", 45.0},
{5, "Design Patterns", "Gamma", "Addison-Wesley", 78.0}
};
int n = 5; // 数组长度
int id; // 待删除图书的编号
cout << "请输入要删除的图书编号:" << endl;
cin >> id;
deleteBook(books, n, id); // 删除指定图书
return 0;
}
```
以上代码仅供参考,实际情况中需要根据具体的需求和实现方式进行修改。
阅读全文