数据结构课程设计报告 手机个人通讯录信息管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东北大学信息科学与工程学院
数据结构课程设计报告
题目手机个人通讯录信息管理系统课题组长黄红清
课题组成员邢伟王帅
专业名称计算机科学与技术
班级计1307
指导教师杨雷
2015 年 1月
课程设计任务书
题目:
手机个人通讯录信息管理系统
问题描述:
对手机个人通讯录的创建和查询等信息管理作一个简单的模拟。
设计要求:
设计手机个人通讯录管理的模拟程序。
(1)采用顺序表或结构体链表存储结构。
(2)实现通讯录的创建、修改、插入、删除、分组等管理功能。
(3)实现通讯录的各种查询和统计功能。
(4)采用优化的查询和排序算法和实用的人机交互界面。
(5)其它完善性功能。
指导教师签字:
年月日
目录
1 课题概述 (4)
1.1 课题任务 (4)
1.2 课题原理 (4)
1.3 相关知识 (4)
2 需求分析 (5)
2.1 课题调研 (5)
2.2 用户需求分析 (5)
3 方案设计 (6)
3.1 总体功能设计 (6)
3.2 数据结构设计 (6)
3.3 函数原型设计 (8)
3.4 主算法设计 (9)
3.5 用户界面设计 (10)
4 方案实现 (11)
4.1 开发环境与工具 (11)
4.2 程序设计关键技术 (11)
4.3 个人设计实现(按组员分工)
4.3.1 黄红清设计实现 (11)
4.3.2 邢伟设计实现 (26)
4.3.3 王帅设计实现 (28)
5 测试与调试 (31)
5.1 个人测试(按组员分工) (32)
5.1.1 黄红清测试 (31)
5.1.2 邢伟测试 (31)
5.1.3 王帅测试 (31)
5.2 组装与系统测试 (32)
5.3 系统运行 (32)
6 课题总结 (38)
6.1 课题评价 (38)
6.2 团队协作 (38)
6.3 个人设计小结(按组员分工) (39)
6.3.1 黄红清设计小结 (39)
6.3.2 邢伟设计小结 (39)
6.3.3 王帅设计小结 (39)
7 附录A 课题任务分工 (40)
A-1 课题程序设计分工 (40)
A-2 课题报告分工 (43)
附录B 课题设计文档(光盘) (44)
B-1课程设计报告(电子版) (44)
B-2源程序代码(*.H,*.CPP) (44)
B-3工程与可执行文件) (44)
B-4屏幕演示录像文件(可选) (44)
附录C 用户操作手册(可选) (45)
C.1 运行环境说明 (45)
C.2 操作说明 (45)
1 课题概述
1.1 课题任务
【问题描述】
对手机个人通讯录的创建和查询等信息管理作一个简单的模拟。
【设计要求】
设计手机个人通讯录管理的模拟程序。
(1)采用顺序表或结构体链表存储结构。
(2)实现通讯录的创建、修改、插入、删除、分组等管理功能。
(3)实现通讯录的各种查询和统计功能。
(4)采用优化的查询和排序算法和实用的人机交互界面。
(5)其它完善性功能。
1.2 课题原理
利用数据结构中的顺序表或链表对手机通讯录的联系人信息进行存储,同时通过图形界面的设计制作对手机通讯录的各个功能进行模拟。
1.3相关知识
(1)顺序表或链表的基本结构;
(2)顺序表和链表的基本操作,如:插入、删除、查找;
(3)C++ MFC可视化程序设计的基本知识;
2 需求分析
2.1 课题调研
我们的课题是手机通讯录的模拟,我们对身边同学手机通讯录进行了基本的调查,发现这些通讯录的基本功能大致相同:
(1)均带有分组功能。将联系人可以分为多个组存储。
(2)可以直观地展示各组联系人以及每个联系人的详细信息。点击每个条目后,自动展开分组或者直接显示出联系人的详细信息。
(3)可以对分组进行修改、删除、添加等操作。
(4)可以对联系人进行添加、删除、修改、移动等操作。
(5)可以进行姓名和号码的查询。
(6)拥有人性化的操作界面。
所以我们便以此为设计目标,进行手机通讯录的模拟程序设计。
2.2 用户需求分析
如今手机越来越成为人们生活、学习和工作中不可缺少的一员,但其最基本的功能是通话,通讯录的存在是及其必要和重要的,一个合理的手机通讯录能够更方便地对用户进行服务,用户使用它可以更便捷地查找和添加联系人,修改其信息等等,因此需求十分巨大。
在计算机还未普及之前通讯管理都是由联系人采用名片,笔录手工记帐的方式来操作的.现在一般的通讯录管理都是采用计算机作为工具的实用的计算机通讯录管理程序来帮助人们进行更有效的通讯录信息管理。通讯录管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。要求应用程序功能完备,易使用等特点。
功能上,需要实现通讯录管理系统的基本功能,如课题调研中所述的功能。性能上,应当考虑更多的更快捷的查找操作,保证程序的运行速度。
3 方案设计
3.1 总体功能设计
(1)新建联系人、新建组功能
(2)删除、编辑联系人和组的功能
(3)移动联系人到其他分组的功能
(4)按姓名查询联系人功能
(5)按号码查询联系人功能
(6)显示联系人和组的详细信息功能
(7)联系人数量、分组数的基本统计功能
(8)帮助功能
3.2 数据结构设计
为了方便文件存储操作,整个程序数据结构采用顺序表来设计。
class Contact//最基本单位为联系人类,其中有每个联系人的具体信息条目{
public:
Contact();
~Contact();
int Create(char *n, char *p, char *c, char *r);
char name[25];//姓名
char phonenumber[12];//号码
char city[25];//城市
char remark[MAX_REMARK];//备注
int numberofcalls;//通话次数
struct record{
struct date{
int year;
int month;
int day;
int hour;
int minute;
} date;//通话日期时间
struct talktime{
int minute;