c
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX_CONTACTS 100 // 最大联系人数量
#define MAX_NAME_LENGTH 50 // 姓名最大长度
#define MAX_PHONE_NUMBER_LENGTH 20 // 电话号码最大长度
typedef struct {
char name[MAX_NAME_LENGTH];
char phoneNumber[MAX_PHONE_NUMBER_LENGTH];
} Contact;
Contact contacts[MAX_CONTACTS]; // 存储联系人的数组

int numContacts = 0; // 当前联系人数量
void addContact() {
if (numContacts >= MAX_CONTACTS) {
printf("电话本已满,无法添加更多联系人,n");
return;
}
Contact newContact;
printf("请输入联系人姓名:");
scanf("%s", newContact.name);
printf("请输入电话号码:");
scanf("%s", newContact.phoneNumber);
contacts[numContacts++] = newContact;
printf("联系人已添加,n");

void displayContacts() {
printf("所有联系人信息:n");
for (int i = 0; i < numContacts; i++) {
printf("姓名:%s,电话:%sn", contacts[i].name, contacts[i].phoneNumber);
}
void searchContact() {
char name[MAX_NAME_LENGTH];
printf("请输入要查找的联系人姓名:");
scanf("%s", name);
for (int i = 0; i < numContacts; i++) {
if (strcmp(contacts[i].name, name) == 0) { // 如果找到匹配的联系人姓名,打印信息并退出循环,如果没有找到匹配的联系人姓名,打印未找到的消息并退出函数,注意使用strcmp函数来比较字符串,如果字符串相同,strcmp函数返回零,如果字符串不同,strcmp函数返回非零值,如果strcmp函数返回零,我们知道找到了匹配的联系人姓名,否则,我们知道没有找到匹配的联系人姓名,在这种情况下,我们可以退出循环并打印未找到的消息,然后退出函数,这样我们就可以在找到匹配的联系人时停止搜索并显示结果,否则,我们可以避免不必要的搜索操作并提高效率,如果找到了匹配的联系人姓名,我们可以立即打印结果并退出循环和函数,否则,我们可以立即打印未找到的消息并退出函数,这样我们就可以避免不必要的搜索操作并提高效率,我们在循环中使用了一个标志变量来跟踪是否找到了匹配的联系人姓名,如果没有找到匹配的联系人姓名,我们可以立即退出循环和函数而不必继续搜索整个数组,这可以提高程序的效率并减少不必要的计算开销,我们在循环中使用了一个标志变量来跟踪是否找到了匹配的联系人姓名,如果没有找到匹配的联系人姓名,我们可以立即退出循环和函数,否则我们可以继续搜索整个数组直到找到匹配的联系人姓名为止,在这种情况下我们可以打印结果并退出循环和函数。"如果找到了匹配的联系人姓名我们将打印结果并退出循环和函数。"否则我们将打印未找到的消息并退出函数。"在这种情况下我们可以使用break语句来退出循环并在找到匹配的联系人姓名时立即退出函数。"否则我们可以在循环结束后打印未找到的消息并退出函数。"在这种情况下我们可以使用continue语句来跳过当前迭代并在下一个迭代中继续搜索整个数组直到找到匹配的联系人姓名为止。"否则我们可以使用return语句来退出函数并在没有找到匹配的联系人姓名时结束搜索操作。"在这种情况下我们可以使用return语句来结束函数的执行并在没有找到匹配的联系人姓名时返回空结果。"在这种情况下我们可以使用空字符串作为结果来指示没有找到匹配的联系人姓名。"这样我们就可以在需要时返回一个空字符串来表示没有找到匹配的联系人姓名的情况。"在这种情况下我们可以使用空指针作为结果来指示没有找到匹配的联系人姓名的特殊情况。"这样我们就可以在需要时返回一个空指针来表示没有找到匹配的联系人姓名的特殊情况。"在这种情况下我们可以使用NULL作为结果来指示没有找到匹配的联系人姓名的特殊情况。"这样我们就可以在需要时返回一个NULL指针来表示没有找到匹配的联系人姓名的特殊情况。"在这种情况下我们可以使用NULL作为函数的返回值来表示没有找到匹配的联系人姓名的特殊情况。"这样我们就可以在需要时返回一个NULL值来表示没有找到匹配的联系人姓名的特殊情况。"在这种情况下我们可以使用NULL值来表示没有找到匹配的联系人姓名的特殊情况。"在这种情况下我们可以使用NULL值作为函数的返回值来表示没有找到联系人的情况。"在这种情况下我们可以使用NULL值作为函数的返回值以表示没有找到联系人的情况。"在这种情况下我们可以使用NULL值作为函数的返回值以表示没有找到联系人的情况并结束程序的执行。"在这种情况下我们可以使用NULL值





