C语言编程设计一个通讯录管理程序,要求包含下列基本功能: 1.创建通讯录,支持多条信息的输入; 2.增加一组记录; 3.删除指定记录; 4.根据给定条件查询记录; 5.显示通讯录中所有记录信息; 【要求】: 1)在通讯录中,每个人的通讯信息用一条记录表示,其中至少包括姓名、电话号码、邮箱地址三个数据项。 2)为了能够将通讯录的信息独立于程序永久性地保存起来,建议利用C语言提供的文件类型将通讯录信息存储成磁盘文件。 3)考虑设计一个菜单,其中列出程序提供的功能,用户可以自由地选择其中的某项操作。
时间: 2024-03-12 15:46:43 浏览: 131
好的,我可以为您提供一个简单的通讯录管理程序的代码,具体如下:
```c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct Contact {
char name[20];
char phone[15];
char email[30];
}Contact;
void createContact(Contact contacts[], int *count) {
printf("请输入要创建的联系人个数:");
scanf("%d", count);
getchar(); //清除缓存区中的回车键
for (int i = 0; i < *count; i++) {
printf("请输入第%d个联系人的姓名:", i + 1);
gets(contacts[i].name);
printf("请输入第%d个联系人的电话:", i + 1);
gets(contacts[i].phone);
printf("请输入第%d个联系人的邮箱:", i + 1);
gets(contacts[i].email);
}
}
void addContact(Contact contacts[], int *count) {
printf("请输入要新增的联系人个数:");
int add_num;
scanf("%d", &add_num);
getchar();
for (int i = *count; i < *count + add_num; i++) {
printf("请输入第%d个联系人的姓名:", i + 1);
gets(contacts[i].name);
printf("请输入第%d个联系人的电话:", i + 1);
gets(contacts[i].phone);
printf("请输入第%d个联系人的邮箱:", i + 1);
gets(contacts[i].email);
}
*count += add_num;
}
void deleteContact(Contact contacts[], int *count) {
printf("请输入要删除的联系人姓名:");
char name[20];
gets(name);
int index = -1;
for (int i = 0; i < *count; i++) {
if (strcmp(contacts[i].name, name) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该联系人!\n");
}
else {
for (int i = index; i < *count - 1; i++) {
contacts[i] = contacts[i + 1];
}
(*count)--;
printf("删除成功!\n");
}
}
void searchContact(Contact contacts[], int count) {
printf("请输入要查询的联系人姓名:");
char name[20];
gets(name);
int index = -1;
for (int i = 0; i < count; i++) {
if (strcmp(contacts[i].name, name) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该联系人!\n");
}
else {
printf("姓名:%s\n电话:%s\n邮箱:%s\n", contacts[index].name, contacts[index].phone, contacts[index].email);
}
}
void displayContact(Contact contacts[], int count) {
printf("所有联系人信息如下:\n");
for (int i = 0; i < count; i++) {
printf("姓名:%s\n电话:%s\n邮箱:%s\n", contacts[i].name, contacts[i].phone, contacts[i].email);
}
}
int main() {
Contact contacts[100];
int count = 0;
while (1) {
printf("欢迎使用通讯录管理程序!\n");
printf("1.创建通讯录\n");
printf("2.新增联系人\n");
printf("3.删除联系人\n");
printf("4.查询联系人\n");
printf("5.显示所有联系人\n");
printf("6.退出程序\n");
printf("请选择操作:");
int choice;
scanf("%d", &choice);
getchar();
switch (choice) {
case 1:
createContact(contacts, &count);
break;
case 2:
addContact(contacts, &count);
break;
case 3:
deleteContact(contacts, &count);
break;
case 4:
searchContact(contacts, count);
break;
case 5:
displayContact(contacts, count);
break;
case 6:
printf("谢谢使用!\n");
exit(0);
break;
default:
printf("输入有误,请重新输入!\n");
break;
}
}
return 0;
}
```
使用方法:将以上代码保存为一个 .c 文件,然后在命令行中编译运行即可。该程序提供了创建通讯录、新增联系人、删除联系人、查询联系人、显示所有联系人等基本功能,用户可以通过菜单选择相应的操作。通讯录信息可以通过文件保存,这里没有具体实现,可以根据需要自行添加。
希望以上代码可以帮到您!
阅读全文