突出信息表包括以下10中常见的基本操作:图书信息表的创建和输出、排序、修改、逆序存储、最贵突出的查找、最爱图书的查找、最佳突出的查找、新图书的入库、旧图书的出库、图书去重。试验要求分别利用顺序表或链表实现上述10项操作。 用Dev-C++5.11写出代码
时间: 2024-12-16 08:19:02 浏览: 13
1.基于顺序存储结构的图书信息表的创建和输出 2..基于顺序存储结构的图书信息表的排序 3.基于顺序存储结构的图书信息表的修改
在使用Dev-C++ 5.11实现突出信息表的操作时,我们需要考虑是否使用数组(顺序表)还是链表结构。这里我会给出一个简单的示例,演示如何使用链表来实现部分操作。对于其他操作,如排序、逆序存储等,其原理类似,但是代码会更复杂一些。
首先,我们创建一个简单的`Book`节点结构:
```cpp
#include <iostream>
// 定义一个图书节点
struct Book {
int id;
std::string title;
double price;
// 构造函数和获取/设置成员的方法省略...
};
```
然后我们可以创建一个单链表用于存储图书:
```cpp
class LibraryList {
private:
struct Node {
Book book;
Node* next;
};
Node* head;
public:
// 初始化链表
void init() { head = nullptr; }
// 添加新书到链表
void add(Book newBook) {
Node* newNode = new Node{newBook, nullptr};
if (!head) {
head = newNode;
} else {
Node* temp = head;
while (temp->next) {
temp = temp->next;
}
temp->next = newNode;
}
}
// 输出所有图书
void display() {
Node* temp = head;
while (temp) {
std::cout << "ID: " << temp->book.id << ", Title: " << temp->book.title << ", Price: " << temp->book.price << "\n";
temp = temp->next;
}
}
};
int main() {
LibraryList lib;
lib.init();
// 示例添加新书
Book newBook = {1, "New Book", 19.99};
lib.add(newBook);
// 显示所有图书
lib.display();
return 0;
}
```
这只是一个基础版本,实际实现其他操作(如排序、查找、去重等)需要额外编写相应的函数。注意,为了简化,这个例子没有包含错误处理。在生产环境中,你需要考虑更多的边界条件和异常情况。
阅读全文