建立的一个通信录管理系统:

//建立一个管理通讯录程序

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int    count=0;
char   *NAME[100];
struct tx1
{
char name[10];
int  num;
char telephone[13];
};
//新建联系人
void new (struct tx1 frients[])
{
struct tx1  f;
if(count==0)
{
printf("通讯录已满!\n");
return ;
}
printf("请输入联系人的姓名:");
scanf("%s",f.name);
printf("请输入联系人的学号:");
scanf("%d",&f.num);
printf("请输入联系人的电话:");
scanf("%s",f.telephone);
printf("\n");
frients[count]=f;
count++;
}
//查询联系人
void  search_friend(struct tx1 friends[],char *name)
{
int i,flag =0;
if(count ==0)
{
printf("通讯录为空!\n");
return ;
}
for(i=0;i<count;i++)
{
if(strcmp(name,friends[i].name)==0)
{
flag=1;
printf("姓名:%s\t",friends[i].name);
printf("学号:%d\t",friends[i].num);
printf("电话:%s\t\n",friends[i].telephone);
}
}
if(flag<1)
printf("无此联系人!\n");
}

//修改联系人
void edit_friend(struct tx1 friends[],char *name)
{
int i,j,k,flag=0;
struct tx1 f;
for(i=0;i<count;i++)
{
if(strcmp(name,friends[i].name)==0)
{
flag=1;
break;
}
}
if(flag=1)
{
printf("请输入修改后联系人的姓名:");
scanf("%s",f.name);
printf("请输入修改后联系人的学号:");
scanf("%d",&f.num);
printf("请输入修改后联系人的电话:");
scanf("%s",f.telephone);
friends[i]=f;
NAME[i] =friends[i].name;
for(i=0;i<count-1;i++)
{
k=i;
for(j=i+1;j<count;j++)
if(strcmp(NAME[i],NAME[j])>0)
k=j;
}
if(k!=i)
{
f=friends[i];
friends[i]=friends[k];
friends[k]=f;
}
}
else
printf("无此联系人!\n");
}

//显示所有联系人
void sort_friend(struct tx1 frients[])
{
int i;
if(count==0)
{
printf("通讯录为空!\n");
return ;
}
else
{
printf("按字母排序:\n");
for(i=0;i<count;i++)
{
printf("姓名:%s\t",frients[i].name);
printf("学号:%d\t",frients[i].num);
printf("电话:%s\t\n",frients[i].telephone);
}
}
}

int main()
{
char choice;
char name[10];
struct tx1 friends[100];
do
{
printf("=====通讯录功能选项=====\n");
printf("       1:新建  \n");
printf("       2:查询  \n");
printf("       3:修改  \n");
printf("       4:显示  \n");
printf("       0:退出  \n");
printf("请选择数字:");
scanf("%d",&choice);
switch(choice)
{
case 1: new (friends);
break;
case 2:
    printf("请输入要查询人得姓名:");
    scanf("%s",name);
    search_friend(friends,name);
    break;
case 3:
    printf("请输入要修改人得姓名:");
    scanf("%s",name);
    edit_friend(friends,name);
    break;
case 4:
    sort_friend(friends);
    break;
case 0:
        break;
}
}
while(choice!=0);
printf("谢谢使用通讯录管理系统!\n");
return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值