上一篇
c语言怎么写通讯录
- 行业动态
- 2024-03-26
- 1
在C语言中编写一个简单的通讯录程序涉及到多个步骤,包括数据结构的定义、输入/输出处理以及可能的排序和搜索功能,以下是创建通讯录程序的一个基本指南:
1. 定义数据结构
我们需要一个结构体来存储联系人的信息。
#include <stdio.h> #include <string.h> // 定义一个结构体来保存联系人信息 typedef struct { char name[50]; // 姓名 char phoneNumber[20]; // 电话号码 char email[50]; // 邮箱地址 } Contact;
2. 初始化数组或动态内存分配
接着,我们可以创建一个数组来保存多个Contact
对象,或者使用动态内存分配(如malloc
)来管理不确定数量的联系人。
// 假设我们想存储100个联系人 #define MAX_CONTACTS 100 Contact contacts[MAX_CONTACTS]; int currentContacts = 0; // 当前通讯录中的联系人数量
3. 添加联系人功能
接下来,我们需要一个函数来添加新的联系人到通讯录中:
void addContact(Contact contact) { if (currentContacts < MAX_CONTACTS) { contacts[currentContacts] = contact; currentContacts++; printf("联系人 %s 已成功添加! ", contact.name); } else { printf("通讯录已满,无法添加更多联系人! "); } }
4. 显示所有联系人
我们还需要一个函数来显示通讯录中的所有联系人:
void displayContacts() { for (int i = 0; i < currentContacts; i++) { printf("%d: %s %s %s ", i+1, contacts[i].name, contacts[i].phoneNumber, contacts[i].email); } }
5. 查找联系人
查找特定联系人的功能可以通过遍历数组并比较姓名来实现:
int findContact(const char* name) { for (int i = 0; i < currentContacts; i++) { if (strcmp(contacts[i].name, name) == 0) { return i; // 如果找到了,返回索引 } } return 1; // 如果没有找到,返回1 }
6. 删除联系人
删除联系人可以通过移动数组中的元素来实现:
void deleteContact(const char* name) { int index = findContact(name); if (index != 1) { for (int i = index; i < currentContacts 1; i++) { contacts[i] = contacts[i + 1]; } currentContacts; printf("联系人 %s 已删除。 ", name); } else { printf("未找到联系人 %s。 ", name); } }
7. 主函数
我们在主函数中组织这些功能:
int main() { // 示例:添加一些联系人到通讯录 addContact({"张三", "1234567890", "zhangsan@example.com"}); addContact({"李四", "0987654321", "lisi@example.com"}); displayContacts(); // 查找并删除一个联系人 deleteContact("张三"); displayContacts(); return 0; }
以上是一个简单的通讯录程序的实现,根据实际需要,你可以添加更多的功能,比如按名字或电话号码排序联系人,或者将通讯录持久化存储到文件等,注意,这个示例代码没有考虑用户输入验证和错误处理,这些在实际的程序中是非常重要的。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/293109.html