C语言课程设计--电话簿管理系统

本文介绍了一个使用C语言实现的电话簿管理系统,包括添加、查找和修改联系人等功能。系统通过文本文件存储数据,并提供了友好的用户交互界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言课程设计–电话簿管理系统-----源码电话簿管理系统

文件目录:

在这里插入图片描述
初始界面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

现在显示一部分代码:

//添加联系人
void add()
{ 
	int i;
	FILE *fp1;//定义文件指针fp1,使其指向电话簿文本文件
	fp1=fopen("电话簿.txt","a+"); 
	printf("请输入要增加的联系人的个数:");
	scanf("%d",&n); 
	for(i=num;i<num+n;i++)
	{
		printf("请输入要增加的联系人的姓名:\n");
		scanf("%s",person[i].name);
		printf("请输入要增加的联系人的家乡:\n");
		scanf("%s",person[i].hometown);
    	printf("请输入要增加的联系人的电话号码:\n");
    	scanf("%s",person[i].telephone);
    	true_phone(person[i].telephone); 
	    printf("请输入要增加的联系人的邮件:\n");
	    scanf("%s",person[i].Email);
	}
	for(i=num;i<num+n;i++)
	{
		fprintf(fp1,"%s\t%s\t%s\t%s\t",person[i].name,person[i].hometown,person[i].telephone,person[i].Email);
	}
	printf("恭喜您,成功添加%d位联系人",n);
	num=num+n;
	fclose(fp1);
	save();
	saveuu();
} 
//查找联系人函数
void find()
{
	int select;
	system("cls");
	while(1)
	{
		findmenu();
        scanf("%d",&select);
        switch(select){
            case 1:
                namefind();system("cls"); break;
            case 2:
                hometownfind();system("cls");break;
            case 3:
            	mohufind();system("cls");break;
            //case 4:
            	//Emailfind();system("cls");break;
            case 4:
            	system("cls");return;
			default:	
				print_error(); system("cls"); break;
			}
			system("cls");
	}
 } 
//修改联系人姓名 
void modify_name()
{
	int i;
	char str[20];
	printf("请主人输入原来的姓名:");
	scanf("%s",str);
	for(i=0;i<num;i++)
	{
		if(strcmp(person[i].name,str)==0)
		{
			printf("请主人输入现在的新名字:");
			scanf("%s",str);
			if(strcmp(person[i].name,str)==0)
			{
				printf("对不起,主人,您输入的姓名与原来的姓名重复,请重新输入吧!\n");
				system("pause");
				system("cls");
				//return;
			}
			else
			{
				strcpy(person[i].name,str);
				printf("恭喜您主人,修改名字成功啦!!!\n");
				system("pause");
				system("cls");
				//return;
			}
			save();
			return;
		}
		if(i==num-1)
		{
			printf("主人,您要修改的联系人不存在,仔细思考一下再输入吧,亲!!!\n");
			system("pause");
			system("cls");
			//return;
		}
	}
}
//修改联系人家乡 
void modify_hometown()
{
	int i;
	char str[20];
	printf("请主人输入修改联系人的姓名:");
	scanf("%s",str);
	for(i=0;i<num;i++)
	{
		if(strcmp(person[i].name,str)==0)
		{
			printf("请主人输入联系人现在的地点:");
			scanf("%s",str);
			if(strcmp(person[i].hometown,str)==0)
			{
				printf("对不起,主人,您输入的家乡与原来的重复,请重新输入吧!\n");
				system("pause"); 
				system("cls");
				//return;
			}
			else
			{
				strcpy(person[i].hometown,str);
				printf("恭喜您,主人,家乡修改成功!!!\n");
				system("pause");
				system("cls");
			}
			save();
			return;
		}
		if(i==num-1)
		{
			printf("主人,您要修改的联系人信息不存在,请仔细思考一下,再输入吧亲!!!\n");
			system("pause");
			system("cls");
		}
	}
}
//修改联系人电话号码
void modify_telephone()
{
	int i;
	char str[20];
	printf("请主人输入修改联系人的姓名:");
	scanf("%s",str);
	for(i=0;i<num;i++)
	{
		if(strcmp(person[i].name,str)==0)
		{
			printf("请主人输入联系人现在的电话号码:");
			scanf("%s",str);
			if(strcmp(person[i].telephone,str)==0)
			{
				printf("对不起,主人,您输入的电话号码与原来的重复,请重新输入吧!\n");
				system("pause"); 
				system("cls");
				return;
			}
			else
			{
				strcpy(person[i].telephone,str);
				printf("恭喜您,主人,联系人电话号码修改成功啦!!!\n");
				system("pause");
				system("cls");
			}
			save();
			return;
		}
		if(i==num-1)
		{
			printf("主人,您要修改的联系人电话号码不存在,请仔细思考一下再输入吧,亲!!!\n");
			system("pause");
			system("cls"); 
		}
	}
} 
//修改联系人邮件 
void modify_Email()
{
	int i;
	char str[20];
	printf("请主人输入联系人的姓名:");
	scanf("%s",str);
	for(i=0;i<num;i++)
	{
		if(strcmp(person[i].name,str)==0)
		{
			printf("请主人输入现在的新邮件:");
			scanf("%s",str);
			if(strcmp(person[i].Email,str)==0)
			{
				printf("对不起,主人,您输入的邮件与原来的邮件重复,请重新输入吧!\n");
				system("pause");
				system("cls");
				//return;
			}
			else
			{
				strcpy(person[i].Email,str);
				printf("恭喜您主人,修改邮件成功啦!!!\n");
				system("pause");
				system("cls");
				//return;
			}
			save();
			return;
		}
		if(i==num-1)
		{
			printf("主人,您要修改的联系人不存在,仔细思考一下再输入吧,亲!!!\n");
			system("pause");
			system("cls");
			//return;
		}
	}
}

源代码链接在文章前面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我慢慢地也过来了

谢谢大佬的投喂

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值