帮我编写程序,实现具备添加、查看、修改以及删除联系人信息功能的手机通讯录
时间: 2023-04-03 22:03:27 浏览: 145
好的,我可以回答这个问题。以下是一个简单的程序示例:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_CONTACTS 100
struct contact {
char name[50];
char phone[20];
char email[50];
};
struct contact contacts[MAX_CONTACTS];
int num_contacts = 0;
void add_contact() {
if (num_contacts >= MAX_CONTACTS) {
printf("通讯录已满,无法添加新联系人。\n");
return;
}
struct contact new_contact;
printf("请输入联系人姓名:");
scanf("%s", new_contact.name);
printf("请输入联系人电话:");
scanf("%s", new_contact.phone);
printf("请输入联系人邮箱:");
scanf("%s", new_contact.email);
contacts[num_contacts++] = new_contact;
printf("联系人已添加。\n");
}
void list_contacts() {
if (num_contacts == 0) {
printf("通讯录为空。\n");
return;
}
printf("姓名\t电话\t邮箱\n");
for (int i = 0; i < num_contacts; i++) {
printf("%s\t%s\t%s\n", contacts[i].name, contacts[i].phone, contacts[i].email);
}
}
void modify_contact() {
if (num_contacts == 0) {
printf("通讯录为空,无法修改联系人信息。\n");
return;
}
char name[50];
printf("请输入要修改的联系人姓名:");
scanf("%s", name);
int found = 0;
for (int i = 0; i < num_contacts; i++) {
if (strcmp(contacts[i].name, name) == 0) {
printf("请输入新的电话号码:");
scanf("%s", contacts[i].phone);
printf("请输入新的邮箱地址:");
scanf("%s", contacts[i].email);
printf("联系人信息已修改。\n");
found = 1;
break;
}
}
if (!found) {
printf("未找到该联系人。\n");
}
}
void delete_contact() {
if (num_contacts == 0) {
printf("通讯录为空,无法删除联系人。\n");
return;
}
char name[50];
printf("请输入要删除的联系人姓名:");
scanf("%s", name);
int found = 0;
for (int i = 0; i < num_contacts; i++) {
if (strcmp(contacts[i].name, name) == 0) {
for (int j = i; j < num_contacts - 1; j++) {
contacts[j] = contacts[j + 1];
}
num_contacts--;
printf("联系人已删除。\n");
found = 1;
break;
}
}
if (!found) {
printf("未找到该联系人。\n");
}
}
int main() {
int choice;
while (1) {
printf("请选择操作:\n");
printf("1. 添加联系人\n");
printf("2. 查看联系人\n");
printf("3. 修改联系人信息\n");
printf("4. 删除联系人\n");
printf("5. 退出程序\n");
printf("请输入选项:");
scanf("%d", &choice);
switch (choice) {
case 1:
add_contact();
break;
case 2:
list_contacts();
break;
case 3:
modify_contact();
break;
case 4:
delete_contact();
break;
case 5:
printf("程序已退出。\n");
exit(0);
default:
printf("无效选项,请重新输入。\n");
}
}
return 0;
}
阅读全文
相关推荐
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)