C语言实现制作通讯录(新手推荐)
刘翊惠 2023-08-09C#
前言通讯录是一个经典的程序需求,通过C语言的实现可以帮助我们更好地理解和学习编程基础。在这个项目中,我们将使用C语言来设计和实现一个简单的通讯录应用。该应用程序将允许用户添加、删除
前言
通讯录是一个经典的程序需求,通过C语言的实现可以帮助我们更好地理解和学习编程基础。在这个项目中,我们将使用C语言来设计和实现一个简单的通讯录应用。该应用程序将允许用户添加、删除和查找联系人的信息,并将其存储在一个数据结构中。
实现思路
为了实现通讯录应用,我们可以使用结构体和链表来存储联系人的信息。结构体可以用来表示每个联系人的属性,例如姓名、电话号码和电子邮件地址等。链表则可以用来组织联系人,使其可以动态添加和删除。
首先,我们需要定义一个表示联系人的结构体,其中包括姓名(name)、电话号码(phone)和电子邮件地址(email)等字段。然后,我们可以创建一个链表结构,其中的每个节点包含一个联系人结构体,并且具有指向下一个节点的指针。
接下来,我们可以实现以下功能:
- 添加联系人:向链表中插入一个新的联系人节点。
- 删除联系人:从链表中删除指定的联系人节点。
- 查找联系人:通过姓名或电话号码等信息,在链表中查找并返回匹配到的联系人。
- 显示所有联系人:遍历链表,并将每个联系人的信息打印到屏幕上。
代码实现
#include#include #include // 定义联系人结构体 struct Contact { char name[100]; char phone[20]; char email[100]; struct Contact* next; }; // 全局变量,表示链表头 struct Contact* head = NULL; // 添加联系人 void addContact(char name[], char phone[], char email[]) { struct Contact* newContact = (struct Contact*)malloc(sizeof(struct Contact)); strcpy(newContact->name, name); strcpy(newContact->phone, phone); strcpy(newContact->email, email); newContact->next = head; head = newContact; } // 删除联系人 void deleteContact(char name[]) { struct Contact* current = head; struct Contact* previous = NULL; while (current != NULL) { if (strcmp(current->name, name) == 0) { if (previous == NULL) { head = current->next; free(current); return; } else { previous->next = current->next; free(current); return; } } previous = current; current = current->next; } printf("联系人%s不存在。\n", name); } // 查找联系人 struct Contact* findContact(char name[]) { struct Contact* current = head; while (current != NULL) { if (strcmp(current->name, name) == 0) { return current; } current = current->next; } return NULL; } // 显示所有联系人 void displayAllContacts() { struct Contact* current = head; if (current == NULL) { printf("通讯录为空。\n"); return; } while (current != NULL) { printf("姓名:%s,电话:%s,邮箱:%s\n", current->name, current->phone, current->email); current = current->next; } }
代码说明
在上述代码中,我们定义了Contact结构体来存储联系人的信息。通过addContact函数可以向通讯录中添加新的联系人。deleteContact函数可以根据指定的姓名删除联系人。findContact函数可以查找并返回匹配到的联系人。displayAllContacts函数用于遍历并打印通讯录中所有的联系人信息。
总结
通过以上的代码实现,我们可以实现一个简单的通讯录应用,可以添加、删除、查找联系人信息,并可以显示所有联系人的信息。这个项目可以帮助新手更好地理解和学习C语言的基础知识,包括结构体、链表和内存管理等方面的内容。
很赞哦! ()