定义一个包含图书信息(包括,但不限于书号、书名、价格等图书信息)的动态顺序表,读入相应的图书数据,完成图书信息表的创建。然后,统计图书表中的图书个数,同时逐行输出每本书的信息。
时间: 2024-10-22 16:16:34 浏览: 31
1.基于顺序存储结构的图书信息表的创建和输出 2..基于顺序存储结构的图书信息表的排序 3.基于顺序存储结构的图书信息表的修改
动态顺序表,也称为链表,是一种线性的数据结构,可以在运行时动态地增加或删除元素。在Python中,我们可以使用列表(List)作为基础数据结构来模拟这个动态顺序表,其中每个元素代表一本书的信息,包含书号、书名和价格等字段。
首先,我们需要定义一个Book类,用于表示每一本书的信息:
```python
class Book:
def __init__(self, id, title, price):
self.id = id
self.title = title
self.price = price
# 创建一个空的图书列表
book_list = []
```
接下来,我们可以通过用户输入或者从文件中读取数据来添加书籍到列表中:
```python
def add_book(book_list):
book_id = input("请输入书号:")
book_title = input("请输入书名:")
book_price = float(input("请输入价格:"))
new_book = Book(book_id, book_title, book_price)
book_list.append(new_book)
num_books = int(input("请输入要添加的图书数量:"))
for _ in range(num_books):
add_book(book_list)
```
统计图书个数:
```python
num_books_in_list = len(book_list)
print(f"图书总数:{num_books_in_list}")
```
最后,遍历图书列表并输出每本书的信息:
```python
for i, book in enumerate(book_list, start=1): # 使用enumerate获取索引和值
print(f"{i}. 书号:{book.id}, 书名:{book.title}, 价格:{book.price}")
```
阅读全文