简单通讯录(c语言)

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

struct Info
{
char name[32];
char tel[32];
int age;
};
typedef struct Info info;

#define SIZE 100
int person = 0; //表示已经添加的人数

void welcome()
{
system(“clear”);
printf("\n\n\n");
printf("\t\t*********************************\n");
printf("\t\t*********************************\n");
printf("\t\t 欢迎主人使用通讯录\n");
printf("\t\t*********************************\n");
printf("\t\t*********************************\n");
sleep(1);
}

void menu() //菜单
{
system(“clear”);
printf("\n\n\n\n");
printf("\t\t*********************************\n");
printf("\t\t*********************************\n");
printf("\t\t 1、增加信息 2、修改信息\n");
printf("\t\t 3、查找信息 4、删除信息\n");
printf("\t\t 5、显示信息 6、退出\n");
printf("\t\t*********************************\n");
printf("\t\t*********************************\n");
}

void addinfo(info *IP) //增加
{
char name[32]={0};
char tel[32]={0};
int age=0;

printf("请输入姓名、电话、年龄");
scanf("%s%s%d", name, tel, &age);

strcpy(IP[person].name,name);
strcpy(IP[person].tel,tel);
IP[person].age=age;

person++;

}

void modifyinfo(info *IP) //修改
{
char name[32]={0};
char tel[32]={0};
int age= 0,j;

printf("请输入需要信息修改的姓名");
scanf("%s", name);

// int compare_result=0 ;
for (j = 0; j < person; j++)
{
if(strcmp(name , IP[j].name)==0)
{
printf(“请输入该联系人的电话、年龄”);
scanf("%s%d",tel, &age);
strcpy(IP[j].tel, tel);
IP[j].age = age;
printf(“修改成功 ! \n”);
}
}
sleep(2);
}

void searchinfo(info *IP) //查找
{
char name[32] = {0};
int age = 0;
int k;
printf(“请输入需要查找的姓名”);
scanf("%s", name);
for (k = 0; k < person; k++)
{
if (strcmp(name , IP[k].name) == 0)
{
printf("%s %s %d\n",IP[k].name, IP[k].tel, IP[k].age);
}
}
sleep(3);
}

void deleteinfo(info *IP) //删除
{
int num;
int place;
printf(“请输入所需删除联系人的序号 \n”);
scanf("%d", &place);
for (num = place; num < person; num++)
{
strcpy(IP[num].name , IP[num+1].name);
strcpy(IP[num].tel , IP[num+1].name);
IP[num] = IP[num+1];
}
person = person - 1;
printf(“删除成功!”);
}

void showinfo(info *IP)
{
int i;
for(i=0; i< person; i++)
{
printf("%s %s %d\n",IP[i].name, IP[i].tel, IP[i].age);
}
sleep(4);
}

int main()
{
int choice;
info in[SIZE] = {0};

welcome();

 while(1)
 {
     menu();
     scanf("%d",&choice);

    switch(choice)
    {
         case 1:
             addinfo(in);
             break;
         case 2:
             modifyinfo(in);
             break;
         case 3:
             searchinfo(in);
             break;
         case 4:
             deleteinfo(in);
             break;
         case 5:
             showinfo(in);
             break;
         case 6:
             exit(0);           //退出进程
         default:
             printf("Error\n");
    }
}
return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值