【C语言】简单实现通讯录
已实现功能
新建联系人
删除指定联系人
查找指定联系人
修改指定联系人
显示所有联系人
清空所有联系人
按姓名排序联系人
待实现功能
通讯录加密
通讯录联网保存
通讯录导入导出
实现效果展示
头文件
#ifndef __TONYXUNLU_H__
#define __TONGXUNLU_H__
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <Windows.h>
#include <string.h>
#define DEFAULT 2 //通信录默认大小
#define NAME_MAX 10
#define SEX_MAX 5
#define TELE_MAX 12
#define ADDRESS_MAX 50
#define ADD_NUM 2 //每次扩容默认步长
enum OPTION
{
EXIT,
ADD,
DEL,
FIND,
MODIFY,
DISPLAY,
EMPTY,
SORT
};
typedef struct PLEINFO //通讯录个人信息结构体
{
char name[NAME_MAX];
char sex[SEX_MAX];
unsigned char age;
char telephone[TELE_MAX];
char address[ADDRESS_MAX];
}PLEINFO;
typedef struct CONTACT //通讯录结构体
{
unsigned int count;
unsigned int capacity;
PLEINFO *data;
}CONTACT;
CONTACT my_contact;
void InitContact(CONTACT *pcontact); //初始化通讯录
void Modify(CONTACT *pcontact); //修改联系人信息
void SubCapacity(CONTACT *pcontact); //核查缩小通讯录容量
void AddCapacity(CONTACT *pcontact); //核查增加通讯录容量
void Add(CONTACT *pcontact); //新建联系人
void Del(CONTACT *pcontact); //删除联系人
int Find(CONTACT *pcontact); //查找联系人
void Display(CONTACT *pcontact); //显示所有联系人
void Sort(CONTACT *pcontact); //按姓名排序联系人
void Empty(CONTACT *pcontact); //清空联系人
void menu(); //菜单
void Exit(CONTACT *pcontact); //关闭通讯录
#endif //_TONGXUNLU_H__
功能实现文件
#include "tongxunlu.h"
void InitContact(CONTACT *pcontact) //初始化通讯录
{
pcontact->capacity = DEFAULT;
pcontact->count = 0;
pcontact->data = (PLEINFO *)calloc(sizeof(PLEINFO), pcontact->capacity);
if (pcontact->data == NULL)
{
printf("\n初始化通讯录失败\n&