系列文章
任务50 通讯录信息管理系统
文章目录
- 系列文章
- 一、实践目的与要求
- 1、目的
- 2、要求
- 二、课题任务
- 三、总体设计
- 1.存储结构及数据类型定义
- 2.程序结构
- 3.所实现的功能函数
- 4、程序流程图
- 四、小组成员及分工
- 五、 测试
- 插入
- 按编号查找
- 按姓名查找
- 按城市查找
- 更新
- 排序
- 浏览
- 删除
- 统计
- 六、源代码获取
一、实践目的与要求
1、目的
通过此次实践环节主要达到以下目的:
(1)进一步理解和运用结构化程序设计的思想和方法,学会根据具体问题选择合理的计算机存储结构实现数据的存储,构造较有效率的算法;
(2)学会算法描述的方法,并编制具有结构清晰、合理和易读性的小型实用程序;
(3)并会设计测试方案,完成程序的测试,能撰写出该程序的技术报告,为文档整理工作打下一个初步的基础;
(4)培养小组成员间互相学习,取长补短,协同工作的能力。
2、要求
(1)模块化程序设计,锯齿型书写格式,代码要有足够的注释;
(2)根据课题中规定的要求实现既定目标;
(3)撰写格式排版规范、结构完整的技术文档。
二、课题任务
(题目、内容及主要功能描述)
通讯录信息管理系统
通讯录信息包括:编号、通讯人姓名、联系方式、工作地点、城市、备注等。系统能够完成通讯录信息的查询、更新、插入、删除、排序等功能。
(1) 排序:按编号对所有通讯录的信息进行排序。
(2) 查询:分别按编号、通讯人姓名、城市条件查找通讯录信息。
(3) 更新:按编号对某个通讯录信息的某项信息进行修改。
(4) 插入:加入新通讯录的信息。
(5) 删除:按编号删除已注销的通讯录信息。
(6) 浏览:输出所有通讯录信息。
(7) 统计:统计某城市某工作地点的通讯人的数量并输出。
三、总体设计
1.存储结构及数据类型定义
(采用了什么存储结构、被处理数据定义的数据类型,数据类型定义中要有注释说明)
#define MAX_LENGTH 100
#define MAX_CONTACTS 100 //最大通讯录数
#define NAME_LENGTH 20 //姓名最大长度
#define PHONE_LENGTH 20 //手机号最大长度
#define CITY_LENGTH 20 //城市最大长度
#define WORKPLACE_LENGTH 30 //工作地点最大长度
#define REMARKS_LENGTH 50 //备注最大长度
#define INPUT_LENGTH MAX_LENGTH + 1
struct Contact {
int id; //编号
char name[NAME_LENGTH];//通讯人姓名
char phone[PHONE_LENGTH];//联系方式
char city[CITY_LENGTH];//工作地点
char workplace[WORKPLACE_LENGTH];//城市
char remarks[REMARKS_LENGTH];//备注
};
struct Contact contacts[MAX_CONTACTS]; //通讯录数组
int num_contacts = 0; //当前通讯录数
2.程序结构
(程序整体的模块结构图)
3.所实现的功能函数
(每个功能对应的函数名、函数形参及返回值说明)
void sortContacts()//排序函数,按编号升序排列 函数名:sortContacts 函数形参:空 函数返回值: void
void searchContacts()//查找函数,按编号、姓名、城市查找通讯录信息 函数名:searchContacts 函数形参:空 函数返回值: void
void updateContacts()//更新函数,按编号更新通讯录信息 函数名:updateContacts 函数形参:空 函数返回值: void
void insertContacts() //插入函数,加入新通讯录的信息 函数名:insertContacts函数形参:空 函数返回值: void
void deleteContacts()//删除函数,按编号删除已注销的通讯录信息 函数名:deleteContacts函数形参:空 函数返回值: void
void viewContacts() //浏览函数,输出所有通讯录信息 函数名:viewContacts函数形参:空 函数返回值: void
void statisticsContacts() //统计函数,统计某城市某工作地点的通讯人的数量并输出 函数名:statisticsContacts函数形参:空 函数返回值: void
4、程序流程图
四、小组成员及分工
(组长、组员及每人承担的具体模块任务或其他)
组长:
主函数编写以及排序函数,按编号升序排列、查找函数,按编号、姓名、城市查找通讯录信息以及更新函数,按编号更新通讯录信息模块设计。
组员1:
完成插入函数,加入新通讯录的信息以及删除函数,按编号删除已注销的通讯录信息编写
组员2:
完成//浏览函数,输出所有通讯录信息以及统计函数,统计某城市某工作地点的通讯人的数量并输出模块实现
五、 测试
(整合各功能模块后的测试结果截图及说明)
插入
按编号查找
按姓名查找
按城市查找
更新
排序
浏览
删除
统计
六、源代码获取
本次的分享就到这里啦,创作不易,感谢点赞收藏👍
感兴趣的小伙伴可以在评论区留言或者私信我哦💕
提示:代码获取链接:
下载源码