通讯录程序ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通讯录管理系统设计与实现
答辩人:范雪娇 指导教师:梁霞
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
ቤተ መጻሕፍቲ ባይዱ
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
30.2 需求及功能分析
30.2.1 总体功能分析 30.2.2 功能模块分析
30.2.1 总体功能分析
本系统主要划分为8个子模块,如下图所示。
通讯录管理系统
增 加 联 系 人
删 除 联 系 人
查 找 联 系 人
插 入 联 系 人
保 存 联 系 人
加 载 联 系 人
显 示 联 系 人
退 出 模 块
30.2.1 总体功能分析
此外,由于该系统设计了一些图书和读者的 信息存储,而为简单起见,这里没有设置数 据库。因此,就应该定义一个数据结构来存 储这些信息。通过前面的学习知道,类和结 构体都可以实现多个不同类型数据的存储。 而为了重点体现C的特点,我们采用类来存 储这些数据类型。 结构体定义代码如下(代码30-1.txt)。
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
30.1 开发背景
在信息化不断发展的今天,社会成员相互之间联系 越来越紧密,联系方式也越来越多。我们除了手机, 移动电话等常规联系方式外,现在还有了电子邮箱、 MSN、QQ等信息化的联系方式,那么为了方便我 们将每个联系人的多个联系方式保存在一起,方便 由于一种联系方式联系不到某人时,可查询其他联 系方式,以前的“纸质”通讯录已经越来越赶不上 信息化的速度,势必被淘汰,所以我们用所学过的 知识实现一个“非纸质”通讯录。 本章通过建立一个较为完整的通讯录,让读者全面 掌握使用C语言开发应用程序的流程。
总结
这次毕业设计让我对开发一个工程有了更为深刻的认识。在系 统的设计和开发过程中,我不断学习新的软件工程知识和开发技 术,极大的提高了我的编程水平和系统开发能力。通过对PHP动 态网站相关知识的学习,使我对PHP的开发模式有了全新的认识, 深刻感觉到自己知识的不足,使得自己查阅各种资料并学习,现 在已经能够比较熟练和灵活的运用这些技术。
将系统运行过程中的所有联系人信息全部输出。
8. 退出模块
退出通讯录管理系统的功能应该是能够结束死循环,退出管 理系统。
30.3 系统功能的实现
30.3.1 30.3.2 30.3.3 30.3.4 30.3.5 30.3.6 30.3.7 30.3.8 系统选择菜单的实现 增加联系人功能的实现 删除联系人功能的实现 查找联系人模块的实现 插入联系人模块的实现 保存联系人文件模块的实现 从文件加载联系人信息模块的实现 显示所有联系人信息模块的实现
30.2.1 总体功能分析
01 02 03 04 05 06 07 08 09 10 typedef struct { char name[50];/*姓名*/ char corp[50]; /*工作单位*/ char phone[15]; /*联系手机*/ char address[100]; /*家庭住址*/ char qq[15]; /*联系QQ*/ char msn[50]; /*联系MSN*/ char mail[50]; /*email*/ }AddressInfo; /*通讯录结构体*/
30.2.2 功能模块分析
下面依次分析各模块应具备的功能。 1. 增加联系人模块 增加联系人功能应该能够实现新增联系人。当需要一次加入多个 联系人信息时,最好不要重复选择此功能,应该是在增加联系 人之前,就需要用户输入一次增加的联系人个数,然后进行存 储,并一个个地增加。 2. 删除联系人模块 该模块主要完成删除联系人的操作。在删除联系人时需要输入将 要删除的联系人的姓名,然后进行存储。 3. 查找联系人模块 查找联系人功能应该能够实现查找联系人信息,要求输入联系人 姓名,再根据姓名查找所有符合条件的信息。 4. 插入联系人模块 该模块主要完成在某个联系人之前插入另外一个联系人。
30.2.2 功能模块分析
5. 保存联系人模块
保存联系人信息功能应该能够实现将联系人信息经过增加、 删除等修改性操作后,将内存信息保存至文件。
6. 加载联系人信息模块
从文件加载联系人信息功能应该能够实现将联系人信息文件 以写入的顺序读入内存,并可以增加、删除等操作。
7. 显示所有联系人模块
通过本次毕业设计,我学到了很多东西,例如:编程规范,PHP 技术等。这次毕业设计是对我大学三年所学知识的一次综合应用, 让我认识到了自己的不足,并不断的加强改进。在系统不断的完 善改进中,我学到了很多新的知识,也懂得了很多。这使我对自 己的未来充满了信心。
谢谢!
30.4 系统运行
系统设计好了,现在就来看看设计的成果。
30.5 开发过程常见问题及解决
开发过程常见问题及解决办法如下,仅供参考。
⑴ 如果出现“warning C4013: 'exit' undefined; assuming extern returning int”的编译错误,在程 序开头加上对应的头文件包括语句,通常就能解决问题。 ⑵ 在Visual C++ 6.0下开发清屏时,由于对屏幕控制的权 限不多,因此,可使用“system("cls");”语句清屏。 ⑶ C语言较高级的地方还在于对内存的访问与处理,内存申 请、内存复制、内存置位、释放内存,具体函数有: malloc、memcpy、memset、free等,使用方法请参 考头文件。
答辩人:范雪娇 指导教师:梁霞
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
ቤተ መጻሕፍቲ ባይዱ
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
30.2 需求及功能分析
30.2.1 总体功能分析 30.2.2 功能模块分析
30.2.1 总体功能分析
本系统主要划分为8个子模块,如下图所示。
通讯录管理系统
增 加 联 系 人
删 除 联 系 人
查 找 联 系 人
插 入 联 系 人
保 存 联 系 人
加 载 联 系 人
显 示 联 系 人
退 出 模 块
30.2.1 总体功能分析
此外,由于该系统设计了一些图书和读者的 信息存储,而为简单起见,这里没有设置数 据库。因此,就应该定义一个数据结构来存 储这些信息。通过前面的学习知道,类和结 构体都可以实现多个不同类型数据的存储。 而为了重点体现C的特点,我们采用类来存 储这些数据类型。 结构体定义代码如下(代码30-1.txt)。
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
第30章
通讯录
开发背景 需求及功能分析 系统功能的实现 系统运行 开发过程常见问题及解决
30.1 开发背景
在信息化不断发展的今天,社会成员相互之间联系 越来越紧密,联系方式也越来越多。我们除了手机, 移动电话等常规联系方式外,现在还有了电子邮箱、 MSN、QQ等信息化的联系方式,那么为了方便我 们将每个联系人的多个联系方式保存在一起,方便 由于一种联系方式联系不到某人时,可查询其他联 系方式,以前的“纸质”通讯录已经越来越赶不上 信息化的速度,势必被淘汰,所以我们用所学过的 知识实现一个“非纸质”通讯录。 本章通过建立一个较为完整的通讯录,让读者全面 掌握使用C语言开发应用程序的流程。
总结
这次毕业设计让我对开发一个工程有了更为深刻的认识。在系 统的设计和开发过程中,我不断学习新的软件工程知识和开发技 术,极大的提高了我的编程水平和系统开发能力。通过对PHP动 态网站相关知识的学习,使我对PHP的开发模式有了全新的认识, 深刻感觉到自己知识的不足,使得自己查阅各种资料并学习,现 在已经能够比较熟练和灵活的运用这些技术。
将系统运行过程中的所有联系人信息全部输出。
8. 退出模块
退出通讯录管理系统的功能应该是能够结束死循环,退出管 理系统。
30.3 系统功能的实现
30.3.1 30.3.2 30.3.3 30.3.4 30.3.5 30.3.6 30.3.7 30.3.8 系统选择菜单的实现 增加联系人功能的实现 删除联系人功能的实现 查找联系人模块的实现 插入联系人模块的实现 保存联系人文件模块的实现 从文件加载联系人信息模块的实现 显示所有联系人信息模块的实现
30.2.1 总体功能分析
01 02 03 04 05 06 07 08 09 10 typedef struct { char name[50];/*姓名*/ char corp[50]; /*工作单位*/ char phone[15]; /*联系手机*/ char address[100]; /*家庭住址*/ char qq[15]; /*联系QQ*/ char msn[50]; /*联系MSN*/ char mail[50]; /*email*/ }AddressInfo; /*通讯录结构体*/
30.2.2 功能模块分析
下面依次分析各模块应具备的功能。 1. 增加联系人模块 增加联系人功能应该能够实现新增联系人。当需要一次加入多个 联系人信息时,最好不要重复选择此功能,应该是在增加联系 人之前,就需要用户输入一次增加的联系人个数,然后进行存 储,并一个个地增加。 2. 删除联系人模块 该模块主要完成删除联系人的操作。在删除联系人时需要输入将 要删除的联系人的姓名,然后进行存储。 3. 查找联系人模块 查找联系人功能应该能够实现查找联系人信息,要求输入联系人 姓名,再根据姓名查找所有符合条件的信息。 4. 插入联系人模块 该模块主要完成在某个联系人之前插入另外一个联系人。
30.2.2 功能模块分析
5. 保存联系人模块
保存联系人信息功能应该能够实现将联系人信息经过增加、 删除等修改性操作后,将内存信息保存至文件。
6. 加载联系人信息模块
从文件加载联系人信息功能应该能够实现将联系人信息文件 以写入的顺序读入内存,并可以增加、删除等操作。
7. 显示所有联系人模块
通过本次毕业设计,我学到了很多东西,例如:编程规范,PHP 技术等。这次毕业设计是对我大学三年所学知识的一次综合应用, 让我认识到了自己的不足,并不断的加强改进。在系统不断的完 善改进中,我学到了很多新的知识,也懂得了很多。这使我对自 己的未来充满了信心。
谢谢!
30.4 系统运行
系统设计好了,现在就来看看设计的成果。
30.5 开发过程常见问题及解决
开发过程常见问题及解决办法如下,仅供参考。
⑴ 如果出现“warning C4013: 'exit' undefined; assuming extern returning int”的编译错误,在程 序开头加上对应的头文件包括语句,通常就能解决问题。 ⑵ 在Visual C++ 6.0下开发清屏时,由于对屏幕控制的权 限不多,因此,可使用“system("cls");”语句清屏。 ⑶ C语言较高级的地方还在于对内存的访问与处理,内存申 请、内存复制、内存置位、释放内存,具体函数有: malloc、memcpy、memset、free等,使用方法请参 考头文件。