通讯录管理系统项目简介
功能说明
- 控制台黑窗口实现
- 程序需要满足以下几个功能

- 程序开始运行时首先显示选择菜单界面,根据用户输入确定实现何种功能
程序界面

代码实现
多文件实现
和之前写的实战项目类似,这里同样采用多文件实现的方式
多文件写代码的方式可以让我们的写的代码的逻辑结构更加清晰,一个项目多个文件实现的形式同时也符合实际工作中一个项目的实现过程,有利于我们养成良好的编程习惯。

Address_Book.h:内包含项目用到的所有头文件和函数声明,以及一些宏定义和结构体声明等
Address_Book.c:这个.c文件是用来实现项目中大部分基本函数的(不包含main函数的实现)
test.c:项目主函数文件,项目主要逻辑实现(包含main函数)
项目逻辑

头文件部分
包含项目所要引用到的所有头文件,和一些宏定义
//↓↓↓↓↓引入要用的头文件↓↓↓↓↓
#include <stdio.h>
#include<stdlib.h>//清屏函数的头文件
#include <string.h>
//↓↓↓↓↓使用到的宏定义↓↓↓↓↓
#define MAX_NUM 100//通讯录最多存储100个联系人
#define FORMAT "%-10s %-10s %-10d %-25s %-30s\n"
#define DATA ptxl->peoples[i].name, ptxl->peoples[i].sex, ptxl->peoples[i].age, ptxl->peoples[i].phoneNumber, ptxl->peoples[i].address
//这里定义FORMAT和DATA是为了后面打印显示通讯录方便简洁,避免出现同一段代码重复出现多次的情况
//避免代码冗余
通讯录管理系统的实现是基于结构体和结构体数组的。描述一个联系人需要使用到多种类型的数据,这就要定义一个描述单个联系人的结构体,代码如下:
//创建联系人结构体
struct People
{
char name[20];
char sex[4];
int age;
char phoneNumber[12];//电话号码一般是11位数,后面加一位'\0'
char address[30];
};
但是,描述一个通讯录的多个联系人,需要一个结构体数组,同时为了更好地统计通讯录中记录的联系人个数,也需要一个整型变量count,添加一个联系人,count加一,删除一个联系人,count减一;为了实现count和通讯录(结构体数组)之间的绑定关系,这里有定义了一个通讯录的结构体,结构体成员一个是存储联系人的信息的结构体数组,一个是统计联系人个数的整型元素count。
//创建通讯录,也就是联系人数组,最大容量为MAX_NUM,宏定义为100
struct Txl
{
struct People peoples[MAX_NUM];
int count ;
};
同时头文件也包含项目中函数的声明
//↓↓↓↓↓函数声明↓↓↓↓↓
void menu();//菜单函数
void initiate(struct Txl *ptxl); //初始化通讯录总数为0
void Add(struct Txl* ptxl);//添加联系人的函数
void Show(struct Txl* ptxl);//显示联系人的函数
void Find(struct Txl* ptxl);//查找联系人的函数
void Change(struct Txl* ptxl);//修改联系人的函数
void Delete(struct Txl* ptxl);//删除联系人的函数
void Clear(struct Txl* ptxl);//清空通讯录
这里说明一点,这些

本文介绍了通讯录管理系统项目,包括多文件代码组织、结构体与数组的使用、菜单操作(添加、显示、删除、查找、修改和清空)以及代码优化建议,如使用函数指针和动态内存管理。
最低0.47元/天 解锁文章
3867

被折叠的 条评论
为什么被折叠?



