2020年C通讯录管理系统_第1页
2020年C通讯录管理系统_第2页
2020年C通讯录管理系统_第3页
2020年C通讯录管理系统_第4页
2020年C通讯录管理系统_第5页
已阅读5页,还剩246页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C通讯录管理系统

文档仅供参考

学生大作业

课程名称:面向对象程序设计(C++)

文档仅供参考

班级:________B04__________

学院:信息管理学院

第1学期

文档仅供参考

项目名称:通讯录管理系统

班级:11信息与计算科学

姓名学号:华荣军(011303军

余津先(01余津0)

叶维拥(0113033)

完成时间:1月13号

星期日

指导教师:_________杨L勇____________

口甘0.1曰1Q口

文档仅供参考

目录

一、需求分析.......................................................1

1.1开发背景.................................................1

文档仅供参考

1.2待开发的软件系统.........................................2

1.3项目目标.................................................2

1.4运行环境................................................3

二、程序分析......................................................3

2.1技术要点与程序流程图:...................................3

2.1.1主函数流程图.....................................3

2.1.2功能项一:通讯录添加流程图.......................5

2.1.3功能二:通讯录修改流程图.........................6

2.1.4功能三:通讯录删除流程图.........................7

2.1.5功能四:通讯录查询流程图.........................8

2.1.6功能五:通讯录显示流程图........................10

2.1.7功能六:初始化通讯录流程图......................11

2.1.8功能七:帮助流程图..............................12

2.1.9功能八:退出....................................12

2.2通讯录管理系统项目任务书................................12

2.2.1基本功能要求....................................12

2.2.2组员分工安排。..................................13

三、技术路线......................................................13

3.1项目总体方案............................................13

3.1.1采用的软件及开发平台............................13

3.1.2总体方案........................................13

3.2详细设计................................................15

四、工程进度......................................................19

五、测试分析......................................................22

5.1阶段性测试..............................................22

5.1.1通讯录添加阶段性测试............................22

5.1.2通讯录修改阶段性测试............................23

5.1.3通讯录删除阶段性测试............................24

5.1.4通讯录查询阶段性测试............................24

文档仅供参考

5.1.5通讯录显示阶段性测试............................24

5.1.6初始化通讯录阶段性测试..........................25

5.2总体测试................................................25

5.2.1通讯录添加功能测试..............................26

5.2.2通讯录修改功能测试.............................31

5.2.3通讯录删除功能测试..............................34

5.2.4通讯录查询功能测试..............................36

5.2.5通讯录显示功能测试..............................38

5.2.6初始化通讯测试.................................40

5.2.7帮助功能测试....................................40

5.2.8退出通讯管理系统测试............................41

六、个人小结......................................................42

6.1余津先个人小结..........................................42

6.2叶维拥个人小结..........................................43

6.3华荣军个人小结..........................................44

附录一:程序代码.................................................45

定义的结构体和类............................................45

主函数一(主菜单函数)........................................47

通讯录添加函数..............................................77

通讯录修改函数.............................................107

通讯录删除函数.............................................162

通讯录查询函数.............................................197

通讯录显示函数.............................................219

通讯录初始化、帮助、退出函数...............................236

附录二:参考文献.................................................242

大作业评阅报告...................................................243

文档仅供参考

一、需求分析

1.1开发背景

当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计

算机被广泛应用于信息管理系统的原因。计算机的最大好处在于利用它能进行

信息处理。使用计算机进行信息控制,不但提高了工作效率,而且大大地提高了

其安全性。特别对于复杂的信息管理,计算机能充分发挥它的优越性。计算机进

行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。随

着市场经济的发展和人民生活水平的提高,随着科学技术的发展,计算机领域不

断取得新的研究成果。计算机在代替和延伸脑力劳动方面发挥越来越重要的作

用,不但在工业方面而且在日常生活中也越来越离不开计算机。一个学校、企业、

单位的通讯录管理系统是一项重要工作。计算机管理通信档案,日常办公,实现

现代化办公,分析通信现状经过强大的查询和索检高效地索检出数据,提高办事

效率。

管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和

管理者来说都至关重要,因此人事劳资管理系统应该能够为用户提供充分的信

息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种

管理方式存在着许多缺点,如效率低,保密性差,另外时间一长对于查找、更新

和维护都带来了不少困难。

另外通讯录在当今的日常生活工作中的应用也是十分普及的。每个人都有

可能拥有大量的通讯录资料信息,当前大家一般都用手工来记录所有的通讯录

信息。随着时代的进步与发展,人们的联系信息与联系方式变得复杂而多样化,

通讯录信息的大量增加,导致管理这些信息资料就成了问题。直接操作来查找、

添加、删除和修改这些信息,由于信息数据繁多,工作量十分巨大,查找、编辑

都十分困难,而且极易出错,容易造成资料的混乱与者丢失。在各种手机,商务

通内设的电话簿尽管携带方便但却又存在“记录量少,界面小,浏览不方便,记

录数据信息不全面”的缺点。有些人利用Word或Excel编制通讯录信息,虽然

数据比较全面,信息也比较充分,可是查找极其不便,维护起来也麻烦。因此利

用C++编程技术,在计算机中建立一个通讯录资料管理系统十分必要。使通讯

文档仅供参考

录资料管理工作规范化、系统化、程序化,避免资料管理中的混乱,提高信息处

理的速度和准确性,能够及时、准确、有效地查询、删除和修改通讯录的信息情

况。

1.2待开发的软件系统

系统名称:通讯录管理系统。

任务提出者:余津先,华荣军,叶维拥。

开发者:余津先,华荣军,叶维拥。

用户:所有对通讯录信息管理有需求的人群。

1.3项目目标

项目的主要目标是开发一个面向个人的通讯

录信息管理系统。它能实现个人对通讯录信息的

处理,亦即对联系人和联系人群组信息的处理,

比如显示、添加、删除、查询、修改等操作。项

目具体的功能要求是:通讯信息以文本或二进制

的形式存储在文件中,联系人可根据用户需求分

为若干群组,每个群组能够使用不同文件,要求

能添加、删除或修改联系人记录(姓名,手机,

家电,邮箱,群组等),在修改或删除之前需要用

户进一步确认,确认无误后再进行操作,一个联

系人仅能够存在一个群组之中,删除联系人信息

能够仅删除一项也可删除整个联系人信息。还能

够添加、删除联系人群组或对群组改名,在删除

文档仅供参考

群组后,该群组中的联系人自动设为无群组的联

系人,通讯录按联系人姓名排序。增加查询功能,

查询时只输入姓名的首字母,所有符合这一条件

的电话资料均在屏幕上显示。

1.4运行环境

软件环境:运行在Windows软件环境下,如

WindowsXP/Windows/Win。

硬件环境:IBM兼容机、IntelPentiumIII

800/AMDK7以上处理器、128M以上,486或

更高档PC台式机,笔记本电脑;运行时占用内

存:大于128MB,安装所需硬盘:大于1G,打

印机:可选。

二、程序分析

2.1技术要点与程序流程图:

2.1.1主函数流程图

主函数:main()----通讯录系统主界面

功能:对各个类的成员函数的调用

1.经过设定switch。函数,实现选择功能运用。

2.经过break退出程序.

开始

进入通讯录管理系统选择界面

123450

67

退

讯帮

助系

文档仅供参考

2.1.2功能项一:通讯录添加流程图

函数:1、Addtongxuezu().....联系人添加入同学组

2、Addqinrenzu()........联系人添加亲人组

3、AddjiaoshizuQ........联系人添加入教师组

4、Addwumingzu().....联系人添加入无名组

功能:经过调用上面函数实现联系人的添加。

1、经过设定switch。函数,实现选择群组功能运用。

2、使用fopen(),fwrite(),rewind。等文件函数新建四个不同的文件并将联

系人信息写入四个不同的文件。

3、各个群组的联系人不能重复,使用!feof()函数实现对每个文件的遍历

查询是否该联系人已经存在。

4、经过goto语句返回上一层。

功能一:1.通讯录添加

流程图

进入子功能选择界面

1.同学组2.亲人组3.教师组4.无名组

文档仅供参考

中文名:

英文名:

电话号码:

QQ:

E-mai1:

家庭住址:

2.1.3功能二:通讯录修改流程图

函数:1、ModifyQ;........修改联系人信息

2、ModifytongxuezuQ.....修改同学组联系人信息

3、Modifyqinrenzu()......修改亲人组联系人信息

4、Modifyjiaoshizu()......修改教师组联系人信息

5、Modifywumingzu().....修改无名组联系人信息

功能:经过调用上面函数实现联系人的修改。

1、经过设定switch。函数,实现选择群组功能运用。

2、运用fopen(),fwrite()等文件函数将联系人信息从文件读取写入。

3、经过goto语句返回上一层。

功能二:2.通讯录修改

流程图

文档仅供参考

进入子功能选择界面

1.按群组修改2.修改联系人

L24

^1

/

英文名:

输入新信息电话号码:输入新信息

中文名不可修改QQ:中文名不可修改

按空格该项不修改E-mai1:按空格该项不修改

家庭住址:

2.1/

函数:1、Del()“…删除联系人信息

2、Deltongxuezu()......删除同学组

3、Delqinrenzu().....删除亲人组

4、DeljiaoshizuO-一删除教师组

功能:经过调用以上函数实现通讯录的删除功能

1、经过设定switch。函数,实现选择功能运用。

2、运用fopen(),fwrite(),rewind。等文件函数将联系人信息从文件读取写。

3、运用strcmp。、!feof()与文件函数共同查找姓名,strcpy()实现数据的

暂存。

4、删除的联系人各项信息以“#"的形式覆盖。

5、经过goto语句返回上一层。

功能三:3.通讯录删除

流程图

文档仅供参考

进入子功能选择界面

1.删除群组2.删除联系人

123

•••

组以

覆盖被删

除联系人

的信息

删除该组所有联系人的信息

删除指定联系人的信息

删除后的信息放入无名组

2.1.5功能四:通讯录查询流程图

函数:1、SearchO精确查询(中文名查询)(在基类中以虚基函数)

1、Search。--粗略查询(英文名首字母查询)(在派生类中)

功能:经过调用以上函数实现对通讯录的查询

1、经过设定switch。函数,实现选择功能运用。

2、运用strcmp。、!feof()等函数共同查找姓名,strcpy。实现数据的暂存。

3、!feof()等函数对四个文件进行遍历,查询该联系人,无此联系人输出

无此联系人的提示。

4、运用fopen(),fwrite(),rewind。等文件函数将联系人信息从文件读取。

5、经过goto语句返回上一层。

功能四:4.通讯录查询

流程图

文档仅供参考

进入子功能选择界面

1.中文名精确查询2.英文名首字母粗略查询

中文名:中文名:

英文名:以首字母英文名:

排序

电话号码:电话号码:

文档仅供参考

2.1.6功能五:通讯录显示流程图

函数:1、voidShow()……显示通讯录所有联系人的信息

2、ShowtongxuezuO......显示同学组所有联系人的信息

3、ShowqinrenzuQ........显示亲人组所有联系人的信息

4、ShowjiaoshizuO........显示教师组所有联系人的信息

5、ShowwumingzuO.....显示无名组所有联系人的信息

功能:经过调用以上函数实现通讯录联系人的显示

1、经过设定switch。函数,实现选择功能运用。

2、运用!feof()等函数对文件进行遍历

3、运用结构数组sort口存储各个文件的联系人信息,并进行排序。

4、经过goto语句返回上一层。

功能五:1.通讯录显示

流程图

O

进入子功能选择界面

1.按群组显示2.显示所有联系人

文档仅供参考

u。。

显示该组所有联中文名:以英文名首字母排

电话号码:

系人信息并排序QQ:序

E-mail:

2.1.7功能六:初始化通讯录流程图

函数:InitAHO--初始化通讯录全部数据

功能:经过调用上面函数实现初始化通讯录

1、运用fopen()“wb”打开文件清除文件内的内容,fck)se()关闭函数。

2、经过goto语句返回上一层。

初始化通讯录初始化通讯录

成功失败

文档仅供参考

2.1.8功能七:帮助流程图

函数:l^Index()......检索

2、About()----关于版权

功能:经过调用以上函数了解该系统的使用方法及版权

1、cout的充分利用,以文字告诉使用者该系统的不完善性和实用性。

2、经过goto语句返回上一层。

功能七:7.帮助

流程图

进入子功能选择界面

1.检索2.版权

2.1.9功能八:退出

函数:Exit()退出通讯录管理系统

功能:经过调用上面函数实现退出通讯录管理系统

1、cout提示信息,正在退出系统。

2、break跳出switch。退出系统。

2.2通讯录管理系统项目任务书

2.2.1基本功能要求

1、通讯信息以文本或二进制的形式存储在文件中。

2、联系人可根据用户需求分为若干群组,每个群组能够使用不同文件,要求能

添加、删除或修改联系人记录(姓名,手机,家电,邮箱,群组等)。

3、在修改或删除之前需要用户进一步确认,确认无误后再进行操作

文档仅供参考

4、一个联系人仅能够存在一个群组之中,修改联系人信息能够仅修改一项也可

修改整个联系人信息。还能够添加、删除联系人群组。

5、在删除群组后,该群组中的联系人自动设为无群组的联系人。

6、通讯录按联系人姓名排序。增加查询功能,查询时只输入姓名的首字母,所

有符合这一条件的电话资料均在屏幕上显示。

2.2.2组员分工安排。

华荣军:

1、程序方面:通讯录添加函数、通讯录修改函数、初始化通讯录函数及各组员

所写函数的组装。

2、报告方面:报告第二部分--程序分析及各组员所写报告的组合排版。

余津先:

1、程序方面:通讯录查询函数、通讯录显示函数。

2、报告方面:报告第一部分--需求分析、第三部分--技术路线及个人感想。

叶维拥:

1、程序方面:通讯录删除函数、帮助函数、退出函数。

2、报告方面:报告第四部分--工程进度、报告第五部分--测试分析及个人感

想。

三、技术路线

3.1项目总体方案

3.1.1采用的软件及开发平台

在WindowsXP^Win7或Win8的环境下,采用的是Microsoft公

司的VisualC++作为开发平台。利用面向对象的思想实现一个个人通讯录的管

理系统,具体使用了:体现OOP的抽象、封装、继承、多态4种关键技术构造

了基于人们生活状况的习惯建立的个人信息联系网,使一个人的联系网更加方

便,快捷,清晰。

3.1.2总体方案

1、设置一个person的结构体,里面含有联系人的记录,分别为中文名、英文名、

电话号码、QQ、E-mail以及家庭住址。

2、设置一个基类contactperson(联系人),它的保护成员是一个person的结构

文档仅供参考

体,再由这个基类派生出一个派生类group(联系人群组)。

3、我们能够在此基础之上设立一个通讯录管理操作系统界面。

4、我们建立了联系人和联系人群组的管理操作系统。

5、我们经过主函数对两个类的成员函数实现管理。实现添加联系人的英文姓名,

中文姓名,电话,QQ、E-mail以及家庭住址到各个联系人群组,联系人信息的

修改、删除、显示和精确查询;实现分群组对各联系人群组记录的修改,显示,

粗略查询,删除以及其它功能:初始化,检索,关于版权,退出。

综上所述详细的概括:

1、结构体包含联系人的所有记录:中文名、英文名、电话号码、QQ、

E-mail以及家庭住址。

2、基类contactperson中把结构体person的所有内容作为它的保护成员,亦即

定义成personp来实现。同时设定Addtongxuezu、Modify、DekShow^Search

等函数实现添加联系人记录、修改、删除、显示、精确查询等功能。

3、派生类group(联系人群组),我们设定Modifytongxuezu、Showqinrenzu、

Deltongxuezu、Search>InitAll等函数实现联系人群组的相关记录修改、删除、

粗略查询、显示、初始化等功能。

结构体、基类和派生类之间的关系如下图所示:

文档仅供参考

3.2详细设计

1、经过将联系人的各项记录设置成一个结构体,这样在定义基类person的保护

对象时就能够直接定义成personp,这样在基类contactpeson和派生类group进

行相关操作时能全部调用到结构体里的所有记录

2、(1)基类contactpesond的保护对象为结构体person的所有内容;

(2)同时在contactpesond类里定义了一系列的函数:Addtongxuezu()、

Addqinrenzu()>Addjiaoshizu()^AddwumingzuQ>Modify()>Del。、Show。、

Search。用来实现各项功能;

(3)intAddtongxuezuO:首先输入准备添加进同学组的联系人记录中的中文名

字,经过打开同学组、亲人组、教师组以及无名组联系人的文件,将此中文姓名

与各文件记录里的中文姓名相比较。如果strcmp函数匹配一致,则跳出并显示

该联系人数据已经存在,并询问是否输入其它联系人的记录,此做法一是为了防

止一个联系人信息被屡次存储,占用存储空间,二是避免同名的人存储,使得查

询的重复项太大,降低了查询效率。每添加完一个联系人记录,则把它写进同学

组的文件中。并经过返回值来决定是否继续输入还是返回主界面。

(4)intAddqinrenzu():首先输入准备添加进亲人组的联系人记录中的中文名

字,其它的操作和添加进同学组时的操作一样,每添加完一个联系人记录,则把

它写进亲人组的文件中。并经过返回值来决定是否继续输入还是返回主界面。

(5)intAddjiaoshizuO:首先输入准备添加进教师组的联系人记录中的中文名

字,其它的操作和添加进同学组时的操作一样,每添加完一个联系人记录,则把

它写进教师组的文件中。并经过返回值来决定是否继续输入还是返回主界面。

(6)intAddwumingzuQ:首先输入准备添加进无名组的联系人记录中的中文名

字,其它的操作和添加进同学组时的操作一样,每添加完一个联系人记录,则把

文档仅供参考

它写进无名组的文件中。并经过返回值来决定是否继续输入还是返回主界面。

(7)intModify():首先输入想要修改的联系人的中文名,然后逐个文件地找该

联系人的记录,如果中文名在所有文件中匹配不上,则显示该联系人不存在,并

询问是否继续输入进行修改。如果有相匹配的,则在屏幕上显示出该联系人的所

有信息记录,并询问是否确定要修改该联系人的记录来避免一些失误性的修改

的发生,充分体现大众化和人性化的特征。如果确定是要进行修改,则会逐项信

息的进行显示出来,如果需要修改(其中中文名是不可修改项)则输入新值,否

则能够直接按回车键。最后经过返回值来确定继续修改还是返回主界面。

(8)intDel():首先输入想要删除的联系人的中文名,然后逐个文件地找该联系

人的记录,如果中文名在所有文件中匹配不上,则显示该联系人不存在,并询问

是否继续输入进行删除。如果有相匹配的,则在屏幕上显示出该联系人的所有信

息记录,并询问是否确定要删除该联系人的记录来避免一些失误性的删除的发

生,充分体现大众化和人性化的特征。经过对需要删除的联系人的记录用“#"

来覆盖,已达到删除该联系人所有记录的目的。最后经过返回值来确定继续删除

还是返回主界面。

(9)voidShowQ:经过打开各联系人群组的文件,用一个person新建的结构体

来存放里面的所有记录,最后经过排序的方法来将所有记录按英文名的字典顺

序来依次显示出来。最后能够按任意键返回主界面。

(10)virtualintSearchQ:该函数为精确查询,将它设置成虚基类是想利用C++

的多态性,因为派生类group里也有一个Search函数,最后经过指针来调用。

首先输入想要查询的联系人的中文名,然后逐个文件地找该联系人的记录,如果

中文名在所有文件中匹配不上,则显示该联系人不存在,并询问是否返回原查询

界面进行查询。如果有相匹配的,则在屏幕上显示出该联系人的所有信息记录。

最后经过返回值来确定继续删除还是返回主界面。

3、(1)在group类里定义了一系列的函数:Modifytongxuezu。、Modifyqinrenzu。、

Modifyjiaoshizu()、Modifywumingzu()、Showtongxuezu()>Showqinrenzu()、

Showjiaoshizu()、Showwumingzu()、Deltongxuezu()、Delqinrenzu()、

Deljiaoshizu()>Search()>InitAll()>Index()>About。、Exit。,用来实现各项功

文档仅供参考

能。

(2)intModifytongxuezu():首先打开同学组联系人的文件,如果文件为空,则

显示该组记录为空,然后能够按任意键返回主界面。否则先输入想要修改的联系

人的中文名,如果该联系人中文名在该文件中得不到匹配,则显示该联系人不存

在,并询问是否继续输入进行修改。如果找到相关记录,则在屏幕上显示该联系

人的所有记录,并询问是否确定要修改该联系人的记录来避免一些失误性的修

改的发生,充分体现大众化和人性化的特征。如果确定是要进行修改,则会逐项

信息的进行显示出来,如果需要修改(其中中文名是不可修改项)则输入新值,

否则能够直接按回车键。最后经过返回值来确定继续修改还是返回主界面。

(3)intModifyqinrenzu():首先打开亲人组联系人的文件,如果文件为空,则

显示该组记录为空,然后能够按任意键返回主界面。否则先输入想要修改的联系

人的中文名,如果该联系人中文名在该文件中得不到匹配,则显示该联系人不存

在,并询问是否继续输入进行修改。如果找到相关记录,其它操作和在同学组修

改的一样。最后经过返回值来确定继续修改还是返回主界面。

(4)intModifyjiaoshizu():首先打开教师组联系人的文件,如果文件为空,则显示

该组记录为空,然后能够按任意键返回主界面。否则先输入想要修改的联系人的

中文名,如果该联系人中文名在该文件中得不到匹配,则显示该联系人不存在,

并询问是否继续输入进行修改。

如果找到相关记录,其它操作和在同学组修改的一样。最后经过返回值来确定继

续修改还是返回主界面。

(5)intModifywumingzu():首先打开无名组联系人的文件,如果文件为空,则

显示该组记录为空,然后能够按任意键返回主界面。否则先输入想要修改的联系

人的中文名,如果该联系人中文名在该文件中得不到匹配,则显示该联系人不存

在,并询问是否继续输入进行修改。如果找到相关记录,其它操作和在同学组修

改的一样。最后经过返回值来确定继续修改还是返回主界面。

(6)voidShowtongxuezuQ:经过打开同学组的文件,用一个person新建的结

构体来存放里面的所有记录,最后经过排序的方法来将所有记录按英文名的字

文档仅供参考

典顺序来依次显示出来。最后能够按任意键返回主界面。

(7)voidShowqinrenzu():经过打开亲人组的文件,用一个person新建的结构

体来存放里面的所有记录,最后经过排序的方法来将所有记录按英文名的字典

顺序来依次显示出来。最后能够按任意键返回主界面。

(8)voidShowjiaoshizu():经过打开教师组的文件,用一个person新建的结构

体来存放里面的所有记录,最后经过排序的方法来将所有记录按英文名的字典

顺序来依次显示出来。最后能够按任意键返回主界面。

(9)voidShowwumingzuO:经过打开无名组的文件,用一个person新建的结

构体来存放里面的所有记录,最后经过排序的方法来将所有记录按英文名的字

典顺序来依次显示出来。最后能够按任意键返回主界面。

(10)intDeltongxuezu():首先打开同学组联系人的文件,如果文件为空,则显

示该组记录为空,然后能够按任意键返回主界面。否则用一个person新建的结

构体来存放里面的所有记录,并询问是否确定要删除该联系人群组的所有记录

来避免一些失误性的删除的发生,充分体现大众化和人性化的特征。如果确定,

则将会把该群组所有联系人信息全部删掉,并写进无名组中。最后能够按任意键

返回主界面。

(11)intDelqinrenzu():首先打开亲人组联系人的文件,如果文件为空,则显示

该组记录为空,然后能够按任意键返回主界面。否则用一个person新建的结构

体来存放里面的所有记录,并询问是否确定要删除该联系人群组的所有记录来

避免一些失误性的删除的发生,充分体现大众化和人性化的特征。如果确定,则

将会把该群组所有联系人信息全部删掉,并写进无名组中。最后能够按任意键返

回主界面。

(12)intDeljiaoshizuO:首先打开教师组联系人的文件,如果文件为空,则显

示该组记录为空,然后能够按任意键返回主界面。否则用一个person新建的结

构体来存放里面的所有记录,并询问是否确定要删除该联系人群组的所有记录

来避免一些失误性的删除的发生,充分体现大众化和人性化的特征。如果确定,

则将会把该群组所有联系人信息全部删掉,并写进无名组中。最后能够按任意键

文档仅供参考

返回主界面。

(13)intSearch。:该函数为粗略查询,将它设置成虚基类是想利用C++的多态

性,因为基类contactperson里也有一个Search函数,最后经过指针来调用。首

先输入想要查询的联系人的英文名的首字母,然后逐个文件地找该联系人的记

录,如果英文名德首字母在所有文件中匹配不上,则显示通讯录中没有该字母开

头的联系人,并询问是否返回原查询界面进行查询。如果有相匹配的,则在屏幕

上显示出所有以该字母开头的英文名的所有联系人信息记录。最后经过返回值

来确定继续删除还是返回主界面。

(14)voidlnitAlK):首先显示初始化会初始化全部信息数据,并询问是否确定

要进行初始化来避免一些失误性的初始化的发生,充分体现大众化和人性化的

特征。如果确定,则将会把该通讯录所有联系人信息全部初始化。否则显示初始

化不成功,最后能够按任意键返回主界面。

(15)voidlndex():显示出检索系统繁忙,请稍后再检索,并能够按任意键返回

主界面。

(16)voidAbout():显示出该通讯录管理系统的版权相关情况,并能够按任意

键返回主界面。

(17)voidExitQ:实现该通讯录管理系统的退出功能,显示系统正在退出,按

任意键即会结束所有操作。

四、工程进度

工程进度表

\工计划完成实际完成情工作中的收

的工作况获(想法)

日期\

—构思出整完成整体架对系统的整

12—30体架构构的构建个框架应该

文档仅供参考

有一个整

体、系统的

思维

—完成添加完成报告第很多看似简

12—31函数一部分单的东西,

报告第一添加函数完写出来时却

部分成一部分困难重重

-1—1完成修改完成添加函对文件的操

函数、查数及一部分作还不够了

询函数、修改、查询解,需要多

删除函数函数学习

-1—2完成初始完成查询函对文件的操

化函数数、帮助函作有了一些

帮助函数、退出函了解,比如

数、退出数及一部分goto语句和

函数、删除函数在读文件之

后最好加一

句fread(...),

以防多读一

——1—完成显示完成修改函在做显示函

12函数和报数、初始化数时需要用

文档仅供参考

告第二部函数、删除到排序,需

分函数及显示要用一个

函数person新建

的结构体数

组来存放原

有的记录

——1—完成报告完成所有任团队精神真

13其余部分务的很重要,

而且“实践

是检验真理

的唯一标

准“

文档仅供参考

五、测试分析

5.1阶段性测试

5.1.1通讯录添加阶段性测试

C:\DocuanntxandSottAdaanAxdor\泉闻\通讯录TTE原规、储讯就惜”不

1坦用奖巴芝典色显艳△一

该联系人信息己输入先成,

是否继续输入下一个联系人基本信息,

请选择丫或N.

馔狗拼音半:

文档仅供参考

5.1.2通讯录修改阶段性测试

文档仅供参考

5.1.3通讯录删除阶段性测试

5.1.4通讯录查询阶段性测试

5.1.5通讯录显示阶段性测试

WCs\Docuaent«andSo-tt«-HOE3

同当组通讯录信息显示

英文名中文名电话号码QQ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论