C语言用函数实现电话簿管理系统
在C语言中,使用函数是一个非常重要的编程技巧。本文将演示如何使用函数实现电话簿管理系统。
实现思路
电话簿管理系统需要实现的功能包括添加联系人、删除联系人、查询联系人、显示联系人等。为了方便管理,可以将这些功能封装在函数中。
添加联系人
添加联系人主要涉及以下操作:
- 输入联系人姓名和电话号码。
- 将联系人信息存储到文件中。
以下是实现添加联系人的函数的代码:
void add_contact()
{
char name[50];
char phone[20];
printf("请输入姓名:");
scanf("%s", name);
printf("请输入电话号码:");
scanf("%s", phone);
FILE* fp = fopen("contacts.txt", "a");
fprintf(fp, "%s,%s\n", name, phone);
fclose(fp);
printf("联系人添加成功!\n");
}
删除联系人
删除联系人主要涉及以下操作:
- 输入要删除的联系人姓名。
- 在文件中查找匹配的联系人记录。
- 如果找到匹配的联系人记录,则将其删除。
以下是实现删除联系人的函数的代码:
void remove_contact()
{
char name[50];
printf("请输入要删除的联系人姓名:");
scanf("%s", name);
FILE* fp = fopen("contacts.txt", "r");
char temp[100];
int found = 0;
while (fgets(temp, 100, fp) != NULL)
{
char* token = strtok(temp, ",");
if (strcmp(token, name) == 0)
{
found = 1;
continue;
}
FILE* new_fp = fopen("new_contacts.txt", "a");
fprintf(new_fp, "%s", temp);
fclose(new_fp);
}
fclose(fp);
if (found)
{
remove("contacts.txt");
rename("new_contacts.txt", "contacts.txt");
printf("联系人删除成功!\n");
}
else
{
remove("new_contacts.txt");
printf("没有找到匹配的联系人记录。\n");
}
}
查询联系人
查询联系人主要涉及以下操作:
- 输入要查询的联系人姓名。
- 在文件中查找匹配的联系人记录。
- 如果找到匹配的联系人记录,则将其输出。
以下是实现查询联系人的函数的代码:
void search_contact()
{
char name[50];
printf("请输入要查询的联系人姓名:");
scanf("%s", name);
FILE* fp = fopen("contacts.txt", "r");
char temp[100];
int found = 0;
while (fgets(temp, 100, fp) != NULL)
{
char* token = strtok(temp, ",");
if (strcmp(token, name) == 0)
{
found = 1;
printf("联系人姓名:%s\n", token);
token = strtok(NULL, ",");
printf("联系人电话:%s\n", token);
}
}
fclose(fp);
if (!found)
{
printf("没有找到匹配的联系人记录。\n");
}
}
显示联系人
显示联系人主要涉及以下操作:
- 从文件中读取所有联系人记录。
- 逐条输出联系人记录。
以下是实现显示联系人的函数的代码:
void show_contacts()
{
FILE* fp = fopen("contacts.txt", "r");
char temp[100];
while (fgets(temp, 100, fp) != NULL)
{
char* token = strtok(temp, ",");
printf("联系人姓名:%s\n", token);
token = strtok(NULL, ",");
printf("联系人电话:%s\n", token);
}
fclose(fp);
}
示例说明
以下是如何在主函数中调用上述函数的示例:
int main()
{
int choice;
while (1)
{
printf("\n1. 添加联系人");
printf("\n2. 删除联系人");
printf("\n3. 查询联系人");
printf("\n4. 显示所有联系人");
printf("\n5. 退出\n");
printf("请选择您要进行的操作:");
scanf("%d", &choice);
switch (choice)
{
case 1:
add_contact();
break;
case 2:
remove_contact();
break;
case 3:
search_contact();
break;
case 4:
show_contacts();
break;
case 5:
return 0;
default:
printf("\n输入错误,请重新输入!\n");
break;
}
}
}
通过上述示例代码,可以实现一个简单的电话簿管理系统,用户可以通过输入数字选择要执行的操作,然后调用相应的函数执行该操作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言用函数实现电话簿管理系统 - Python技术站