contact.h
#ifndef __CONTACT_H__
#define __CONTACT_H__
#include<stdio.h>
#include<string.h>
#include<assert.h>
#define MAX 1000
#define NAME_MAX 20
#define SEX_MAX 5
#define ADDR_MAX 30
#define TELE_MAX 12
typedef struct PeoInfo
{
char name[NAME_MAX];
int age;
char sex[SEX_MAX];
char addr[ADDR_MAX];
char tele[TELE_MAX];
}PeoInfo;
typedef struct Contact
{
PeoInfo data[MAX];
int sz;
}Contact, *pContact;
void InitContact(pContact pcon);
void AddContact(pContact pcon);
void ShowContact(const pContact pcon);
void DelContact(pContact pcon);
void SearchContact(pContact pcon);
void ModifyContact(pContact pcon);
void SortContach(pContact pcon);
void ClearContact(pContact pcon);
#endif
contact.c
#define _CRT_SECURE_NO_WARNINGS 1
#include"contact.h"
void InitContact(pContact pcon)
{
pcon->sz = 0;
memset(pcon->data, 0, sizeof(pcon->data));
}
void AddContact(pContact pcon)//添加联系人
{
assert(pcon);
if (pcon->sz == MAX)
{
printf("通讯录已满,请删除一些联系人后再添加");
return;
}
printf("请输入要添加联系人的名字;");
scanf("%s", pcon->data[pcon->sz].name);
printf("请输入要添加联系人的性别;");
scanf("%s", pcon->data[pcon->sz].sex);
printf("请输入要添加联系人的年龄;");
scanf("%d", &(pcon->data[pcon->sz].age));
printf("请输入要添加联系人的地址;");
scanf("%s", pcon->data[pcon->sz].addr);
printf("请输入要添加联系人的电话;");
scanf("%s", pcon->data[pcon->sz].tele);
pcon->sz++;
printf("添加成功\n");
}
void ShowContact(const pContact pc