用c语言写一个通讯录系统,该系统能实现添加用户信息,显示用户信息,能够
时间: 2023-11-27 20:03:23 浏览: 85
根据姓名或电话号码查找用户信息,以及删除用户信息的功能。
以下是一个简单的通讯录系统的C语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_CONTACTS 100 // 最大联系人数
typedef struct {
char name[50]; // 姓名
char phone[20]; // 电话号码
} Contact;
Contact contacts[MAX_CONTACTS]; // 联系人列表
int contact_count = 0; // 当前联系人数量
// 添加联系人
void add_contact() {
if (contact_count >= MAX_CONTACTS) {
printf("通讯录已满,无法添加新联系人!\n");
return;
}
Contact new_contact;
printf("请输入联系人姓名:");
scanf("%s", new_contact.name);
printf("请输入联系人电话号码:");
scanf("%s", new_contact.phone);
contacts[contact_count++] = new_contact;
printf("联系人已添加!\n");
}
// 显示联系人列表
void list_contacts() {
if (contact_count == 0) {
printf("通讯录为空!\n");
return;
}
printf("姓名\t\t电话号码\n");
printf("---------------------------------\n");
for (int i = 0; i < contact_count; i++) {
printf("%s\t\t%s\n", contacts[i].name, contacts[i].phone);
}
}
// 查找联系人
void find_contact() {
char keyword[50];
printf("请输入要查找的关键词:");
scanf("%s", keyword);
int count = 0;
for (int i = 0; i < contact_count; i++) {
if (strstr(contacts[i].name, keyword) || strstr(contacts[i].phone, keyword)) {
printf("%s\t\t%s\n", contacts[i].name, contacts[i].phone);
count++;
}
}
if (count == 0) {
printf("未找到匹配的联系人!\n");
}
}
// 删除联系人
void delete_contact() {
char name[50];
printf("请输入要删除的联系人姓名:");
scanf("%s", name);
int index = -1;
for (int i = 0; i < contact_count; i++) {
if (strcmp(contacts[i].name, name) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该联系人!\n");
return;
}
for (int i = index; i < contact_count - 1; i++) {
contacts[i] = contacts[i + 1];
}
contact_count--;
printf("联系人已删除!\n");
}
int main() {
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:
add_contact();
break;
case 2:
list_contacts();
break;
case 3:
find_contact();
break;
case 4:
delete_contact();
break;
case 5:
printf("程序已退出!\n");
exit(0);
default:
printf("无效操作!\n");
break;
}
}
return 0;
}
```
该程序使用了结构体来存储联系人信息,通过数组来存储多个联系人。程序提供了添加、显示、查找和删除联系人的功能。程序使用循环结构来实现交互式操作界面,用户可以通过输入数字来选择不同的操作。
阅读全文