代码拉取完成,页面将自动刷新
#include"contact.h"
//函数的实现
void Initcontact(struct contact* ps)
{
memset(ps->data, 0, sizeof(ps->data));
ps->count = 0;
}
void addcontact(struct contact* ps)
{
if (ps->count == max)
{
printf("通讯录已满,无法增加\n");
}
else
{
printf("请输入名字:");
scanf("%s", ps->data[ps->count].name);
printf("请输入性别:");
scanf("%s", ps->data[ps->count].sex);
printf("请输入年龄:");
scanf("%d",&( ps->data[ps->count].age));
printf("请输入电话:");
scanf("%s", ps->data[ps->count].tele);
printf("请输入地址:");
scanf("%s", ps->data[ps->count].addr);
ps->count++;
printf("添加成功\n");
}
}
void showcontact(const struct contact* ps)
{
if (ps->count == 0)
{
printf("通讯录为空\n");
}
else
{
int i = 0;
printf("%-20s\t%-5s\t%-5s\t%-10s\t%-10s\n", "名字", "性别", "年龄", "电话", "地址");
for (i = 0; i < ps->count; i++)
{
printf("%-20s\t%-5s\t%-5d\t%-10s\t%-10s\n",
ps->data[i].name,
ps->data[i].sex,
ps->data[i].age,
ps->data[i].tele,
ps->data[i].addr);
}
}
}
static int Findbyname(const struct contact* ps, char name [max_name])
{
int i = 0;
for (i = 0; i < ps->count; i++)
{
if (0 == strcmp(ps->data[i].name, name))
{
return i;
}
}
return -1;
}
void delcontact(struct contact* ps)
{
char name[max_name];
printf("请选择要删除的人:");
scanf("%s", name);
//查找要删除的人在什么位置
//找到返回下标
//找不到返回-1;
int pos = Findbyname(ps, name);//在ps指向的结构体中查找name,返回下标;
if (-1==pos)
{
printf("要删除的人不存在\n");
}
//2.删除
else
{
//将查找到的人信息,通过后一个信息进行覆盖,达到删除的信息丢失
int j = 0;
for (j = pos; j < ps->count-1; j++)
{
ps->data[j] = ps->data[j + 1];
}
ps->count--;
printf("删除成功\n");
}
}
void searchcontact(const struct contact* ps)
{
char name[max_name];
printf("请输入需要查找的人名字:");
scanf("%s", name);
int pos = Findbyname(ps, name);//在ps指向的结构体中查找name,返回下标;
if (-1 == pos)
{
printf("要查找的人不存在\n");
}
else
{
printf("%-20s\t%-5s\t%-5s\t%-10s\t%-10s\n", "名字", "性别", "年龄", "电话", "地址");
printf("%-20s\t%-5s\t%-5d\t%-10s\t%-10s\n",
ps->data[pos].name,
ps->data[pos].sex,
ps->data[pos].age,
ps->data[pos].tele,
ps->data[pos].addr);
}
}
void modeifycontact(struct contact* ps)
{
char name[max_name];
printf("请输入需要修改的人名字:");
scanf("%s", name);
int pos = Findbyname(ps, name);
if (-1 == pos)
{
printf("要修改的人信息不存在\n");
}
else
{
printf("请输入名字:");
scanf("%s", ps->data[pos].name);
printf("请输入性别:");
scanf("%s", ps->data[pos].sex);
printf("请输入年龄:");
scanf("%d", &(ps->data[pos].age));
printf("请输入电话:");
scanf("%s", ps->data[pos].tele);
printf("请输入地址:");
scanf("%s", ps->data[pos].addr);
printf("修改成功\n");
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。