C语言代码解析:展示图书馆书籍信息的函数 show_books()
这段代码定义了一个名为 show_books 的函数,其参数为一个指向 Book 结构体的指针 head。该函数的作用是展示图书馆中所有的书籍信息,包括书籍编号、书籍名称、作者以及借阅状态。
在函数中,首先打印表头信息,然后利用 while 循环遍历链表中的每一个节点,打印出该节点的书籍信息。在打印借阅状态时,根据该节点的状态值判断其是否已经被借出,输出对应的字符串。最后将指针指向下一个节点,直到遍历完整个链表为止。
void show_books(Book *head) {
printf('书籍编号 书籍名称 作者 借阅状态
');
Book *current = head;
while (current != NULL) {
printf('%d %s %s %s
', current->id, current->name, current->author, current->status == 0 ? '未借出' : '已借出');
current = current->next;
}
}
代码解析:
-
函数定义:
void show_books(Book *head)定义了一个名为show_books的函数,该函数不返回值 (void),参数为指向Book结构体的指针head。 -
打印表头信息:
printf('书籍编号 书籍名称 作者 借阅状态 ');打印表格的标题行。 -
遍历链表:
while (current != NULL) { ... }使用while循环遍历链表,直到current指针指向NULL(链表末尾)。 -
打印书籍信息:
printf('%d %s %s %s ', current->id, current->name, current->author, current->status == 0 ? '未借出' : '已借出');打印当前节点的书籍信息,包括编号、名称、作者和借阅状态。current->status == 0 ? '未借出' : '已借出'使用三元运算符判断借阅状态:如果current->status等于 0,则输出 '未借出',否则输出 '已借出'。
-
指向下一个节点:
current = current->next;将current指针指向下一个节点,继续循环。
总结:
show_books 函数通过遍历链表,将所有书籍信息以表格形式展示出来,并清晰地标识借阅状态。该代码示例展示了如何使用链表存储数据并通过函数进行数据访问和展示。
原文地址: https://www.cveoy.top/t/topic/mpWq 著作权归作者所有。请勿转载和采集!