粤嵌链表电子相册代码
时间: 2023-08-20 08:10:38 浏览: 138
电子相册代码
以下是一个简单的示例代码,展示了如何使用C语言实现粤嵌链表电子相册的基本功能:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义链表节点结构体
typedef struct Node {
char photo[50]; // 照片名称
struct Node* next; // 指向下一个节点的指针
} Node;
// 在链表尾部插入照片
void insertPhoto(Node** head, char* photoName) {
// 创建新节点
Node* newNode = (Node*)malloc(sizeof(Node));
strcpy(newNode->photo, photoName);
newNode->next = NULL;
// 如果链表为空,将新节点作为头节点
if (*head == NULL) {
*head = newNode;
return;
}
// 找到链表尾部节点
Node* curr = *head;
while (curr->next != NULL) {
curr = curr->next;
}
// 将新节点连接到链表尾部
curr->next = newNode;
}
// 打印照片列表
void printPhotos(Node* head) {
if (head == NULL) {
printf("相册为空。\n");
return;
}
printf("照片列表:\n");
Node* curr = head;
while (curr != NULL) {
printf("%s\n", curr->photo);
curr = curr->next;
}
}
// 释放链表内存
void freeList(Node** head) {
Node* curr = *head;
while (curr != NULL) {
Node* temp = curr;
curr = curr->next;
free(temp);
}
*head = NULL;
}
int main() {
Node* head = NULL; // 头节点
// 插入照片
insertPhoto(&head, "照片1.jpg");
insertPhoto(&head, "照片2.jpg");
insertPhoto(&head, "照片3.jpg");
// 打印照片列表
printPhotos(head);
// 释放链表内存
freeList(&head);
return 0;
}
```
这段代码实现了一个简单的链表电子相册,包括插入照片、打印照片列表和释放链表内存等功能。你可以根据自己的需求进行扩展和修改。
希望这个示例能够帮助到你!如果还有其他问题,请随时提问。
阅读全文