c语言编写的通讯录代码、

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

struct friends_list{

char name[10];

int age;

char telephone[13];

};

int Count=0;

void new_friend(struct friends_list friends[]);

void search_friend(struct friends_list friends[],char*name);

void Modify_friend(struct friends_list friends[],char*name);

void Delete_friend(struct friends_list friends[],char*name,int n);

int main(void)

{

int choice,n;

char name[10];

struct friends_list friends[50];

do{

printf("手机通讯录功能选项: 1:新建2:查询3:修改4:删除0:退出\n"); printf("请选择功能:");

scanf("%d",&choice);

switch(choice){

case 1:

new_friend(friends);

break;

case 2:

printf("请输入要查找的联系人姓名:");

scanf("%s",name);

search_friend(friends,name);

break;

case 3:

printf("请输入您要修改的联系人的姓名:");

scanf("%s",name);

printf("\n");

Modify_friend(friends,name);

break;

case 4:

printf("1:单个删除2:全部删除\n\n");

printf("请选择您需要的操作:\n");

scanf("%d",&n);

if(n==1){

printf("输入名字\n");

scanf("%s",name);

Delete_friend(friends,name,n);

break;

}

if(n==2){

Delete_friend(friends,name,n);

break;

}

case 0: break;

}

}while(choice!=0);

printf("谢谢使用通讯录功能!\n");

return 0;

}

void new_friend(struct friends_list friends[ ])

{

struct friends_list f;

if(Count==50){

printf("通讯录已满!\n");

return;

}

printf("请输入新的联系人的姓名:");

scanf("%s",);

printf("请输入新联系人的年龄:");

scanf("%d",&f.age);

printf("请输入新联系人的联系电话:");

scanf("%s",f.telephone);

friends[Count] = f;

Count++;

}

/*查询联系人*/

void search_friend(struct friends_list friends[],char*name)

{

int i,flag=0;

if(Count==0){

printf("通讯录是空的!\n");

return;

}

/*在书本源代码的基础上,我修改了一下,让程序可以查询多个相同名字的联系人*/ for(i=0;i

if(strcmp(name,friends[i].name)==0){

printf("姓名:%s\t",friends[i].name);

printf("年龄:%d\t",friends[i].age);

printf("电话:%s\n",friends[i].telephone);

flag++;

}

if(flag==0)

printf("无此联系人!\n");

}

/*修改联系人*/

void Modify_friend(struct friends_list friends[],char*name)

{

int k,y=0;

int t,j=1,g=0;

struct friends_list x;

if(Count==0){

printf("通讯录是空的!\n");

return;

}

/*首先,判断要修改的联系人中有没有相同的名字*/

for(k=0;k

if(strcmp(name,friends[k].name)==0)

y++;

}

/*如果,y等于1,说明只有一个需要修改的联系人*/

if(y==1){

for(k=0;k

if(strcmp(name,friends[k].name)==0){

printf("请重新输入姓名\n");

相关文档
最新文档