您好,登录后才能下订单哦!
在现代社会中,手机电话簿管理系统已经成为我们日常生活中不可或缺的一部分。它帮助我们存储、管理和查找联系人信息,极大地提高了我们的生活效率。本文将介绍如何使用C语言实现一个简单的手机电话簿管理系统。
在开始编写代码之前,我们需要明确系统的基本需求。一个基本的手机电话簿管理系统应具备以下功能:
为了实现上述功能,我们需要设计一个合适的数据结构来存储联系人信息。在C语言中,我们可以使用结构体(struct)来表示一个联系人。
struct Contact {
    char name[50];
    char phone[20];
};
添加联系人的功能需要用户输入联系人的姓名和电话号码,并将其存储在系统中。我们可以使用数组来存储多个联系人。
void addContact(struct Contact contacts[], int *count) {
    if (*count >= 100) {
        printf("电话簿已满,无法添加更多联系人。\n");
        return;
    }
    printf("请输入联系人姓名: ");
    scanf("%s", contacts[*count].name);
    printf("请输入联系人电话号码: ");
    scanf("%s", contacts[*count].phone);
    (*count)++;
    printf("联系人添加成功!\n");
}
查找联系人的功能可以通过遍历数组来实现。用户可以选择通过姓名或电话号码进行查找。
void findContact(struct Contact contacts[], int count) {
    char search[50];
    int found = 0;
    printf("请输入要查找的联系人姓名或电话号码: ");
    scanf("%s", search);
    for (int i = 0; i < count; i++) {
        if (strcmp(contacts[i].name, search) == 0 || strcmp(contacts[i].phone, search) == 0) {
            printf("联系人姓名: %s, 电话号码: %s\n", contacts[i].name, contacts[i].phone);
            found = 1;
        }
    }
    if (!found) {
        printf("未找到匹配的联系人。\n");
    }
}
删除联系人的功能需要用户输入要删除的联系人姓名或电话号码,并在数组中找到并删除该联系人。
void deleteContact(struct Contact contacts[], int *count) {
    char search[50];
    int found = 0;
    printf("请输入要删除的联系人姓名或电话号码: ");
    scanf("%s", search);
    for (int i = 0; i < *count; i++) {
        if (strcmp(contacts[i].name, search) == 0 || strcmp(contacts[i].phone, search) == 0) {
            for (int j = i; j < *count - 1; j++) {
                contacts[j] = contacts[j + 1];
            }
            (*count)--;
            found = 1;
            printf("联系人删除成功!\n");
            break;
        }
    }
    if (!found) {
        printf("未找到匹配的联系人。\n");
    }
}
显示所有联系人的功能可以通过遍历数组并打印每个联系人的信息来实现。
void displayContacts(struct Contact contacts[], int count) {
    if (count == 0) {
        printf("电话簿为空。\n");
        return;
    }
    printf("所有联系人信息:\n");
    for (int i = 0; i < count; i++) {
        printf("联系人姓名: %s, 电话号码: %s\n", contacts[i].name, contacts[i].phone);
    }
}
退出系统的功能可以通过设置一个标志变量来实现,当用户选择退出时,程序将结束运行。
int main() {
    struct Contact contacts[100];
    int count = 0;
    int choice;
    while (1) {
        printf("\n手机电话簿管理系统\n");
        printf("1. 添加联系人\n");
        printf("2. 查找联系人\n");
        printf("3. 删除联系人\n");
        printf("4. 显示所有联系人\n");
        printf("5. 退出系统\n");
        printf("请选择操作: ");
        scanf("%d", &choice);
        switch (choice) {
            case 1:
                addContact(contacts, &count);
                break;
            case 2:
                findContact(contacts, count);
                break;
            case 3:
                deleteContact(contacts, &count);
                break;
            case 4:
                displayContacts(contacts, count);
                break;
            case 5:
                printf("退出系统。\n");
                return 0;
            default:
                printf("无效的选择,请重新输入。\n");
        }
    }
    return 0;
}
通过本文的介绍,我们了解了如何使用C语言实现一个简单的手机电话簿管理系统。该系统具备添加、查找、删除和显示联系人的基本功能。虽然这个系统相对简单,但它为更复杂的电话簿管理系统奠定了基础。读者可以根据自己的需求进一步扩展和优化这个系统。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。