E41514068_周永涛_通讯录查询系统的设计与实现

合集下载

通讯录管理系统课程设计报告

通讯录管理系统课程设计报告

通讯录管理系统课程设计报告一、课程设计背景随着信息化时代的到来,通讯录管理系统已经成为了人们日常生活中必不可少的一部分。

在这个快节奏的社会中,人们需要随时随地地获取和管理自己的联系人信息。

因此,设计一个高效、方便、易用的通讯录管理系统就显得尤为重要。

二、需求分析1.功能需求(1)用户注册与登录:用户可以通过注册账号并登录到系统中。

(2)通讯录添加:用户可以添加联系人,包括姓名、电话号码、电子邮件等信息。

(3)通讯录查询:用户可以根据姓名或电话号码等信息查询特定联系人。

(4)通讯录修改:用户可以对已有联系人信息进行修改。

(5)通讯录删除:用户可以删除指定的联系人。

2.非功能需求(1)易用性:系统应该具有良好的界面设计和操作逻辑,使用户能够快速上手使用。

(2)安全性:系统应该具有安全防护措施,保护用户的数据不被非法获取或篡改。

(3)稳定性:系统应该具有高可靠性和稳定性,确保在任何情况下都能正常运行。

三、技术选型本次课程设计采用Java语言进行开发,使用MySQL数据库作为数据存储后端。

前端采用Java Swing框架进行设计,实现用户界面的构建和交互。

后端采用JDBC技术进行与数据库的交互。

四、系统设计1.系统架构本系统采用MVC(Model-View-Controller)架构模式,将业务逻辑、数据存储和用户界面分离开来,提高了代码的可维护性和可扩展性。

2.模块设计(1)用户管理模块:实现用户注册、登录等功能。

(2)通讯录管理模块:实现通讯录添加、查询、修改、删除等功能。

(3)数据存储模块:负责与数据库进行交互,实现数据的持久化存储。

五、系统实现1.前端实现本系统采用Java Swing框架进行开发,通过调用Swing组件库中的各种控件来构建用户界面。

其中包括登录窗口、注册窗口、主窗口等界面。

2.后端实现本系统采用JDBC技术进行与MySQL数据库的交互。

通过编写SQL语句来完成对数据库中表格的增删改查操作,并将结果返回给前端界面显示。

通讯录管理系统的设计与实现

通讯录管理系统的设计与实现

数据结构实验报告实验名称:通讯录管理系统的设计与实现试验时间:2011.1.13班级:姓名学号:指导老师:1.问题描述:通讯录是用来记录,查询联系人通讯信息的工具。

电子通讯录已成为手机,电子词典等电子设备中不可缺少的工具软件。

设计一个能够,满足这种需求的软件。

基本功能模块:输入,显示,查找,插入,删除,保存,读入,排序,修改,移动,退出。

2.设计要求:(1)基本要求1.设计通讯录数据的逻辑结构和物理结构。

2.通讯录至少包含下列数据信息:姓名,电话,地址等。

3.完成图示基本功能。

4.软件易用,操作简单。

5.根据自己使用通讯录的体会,扩充其他功能,如按姓名查找,按学号查找,按序号查找等。

(2)较高要求1.数据输入有效性检验:如姓名不能为空,号码中不能有非法字符等。

2.提供分组管理的相关功能,如:分组显示,加入组,组创建,组查询等。

3.可视化的界面设计。

3.测试案例:请输入您的选择(0--6): 1分别输入编号,姓名,性别,电话,地址(输入0 结束通信录的建立): 编号:01姓名:张三电话:152****1919地址:2-222编号:0请输入您的选择(0--6): 2编号:01姓名:张三电话:152****1919地址:2-222是否继续添加?(Y/N):N请输入您的选择(0--6): 3请选择查询的方式(1 编号,2 姓名):1 请输入编号:01编号:01姓名:张三电话:152****1919地址:2-222请问是否继续查询?(Y/N):N请输入您的选择(0--6): 4输入删除编号:01删除学生信息如下:编号:01姓名:张三电话:152****1919地址:2-222请输入您的选择(0--6): 5通讯录的全部信息如下:*****编号*****姓名*****性别*****电话*****地址*****学生总人数为:1请输入您的选择(0--6):6 记录已保存!请输入您的选择(0--6):0 结束!!!4.数据结构设计:数据域描述通讯录的相关信息,根据每个学生的基本信息含有多个属性,其中包括序号,姓名,性别,电话,地址等,为此可根据学生信息建立结构体,类型定义如下:typedef struct{ char num; //学号char name; //姓名char sex; //性别char phone; //电话char addr; //地址}DataType;根据通讯录的设计要求,可用单向链表实现该通讯录系统的功能。

软件技术毕业设计(论文)通讯录管理系统的设计与实现

软件技术毕业设计(论文)通讯录管理系统的设计与实现

开封大学KAIFENG UNIVERSITY毕业论文通讯录管理系统的设计与实现姓名:xxxx院系:软件技术学院专业:软件技术班级:09级软件四班指导教师:x x x目录论文摘要 (3)前言 (4)一、管理信息系统的开发 (4)(二)MIS系统开发过程 (5)二、可行性研究及需求分析 (6)(一)可行性研究 (6)(二)需求分析 (7)三、通讯录管理系统的概要设计 (7)(一)通讯录管理系统用例图 (8)(二)通讯录管理信息系统概要设计 (8)(三)通讯录管理信息系统的功能模块说明 (9)四、通讯录管理系统的界面设计 (9)(一)概念设计 (9)(二)数据库逻辑结构设计 (11)五、通讯录管理系统的详细设计 (14)(一)开发工具的选择 (14)(二)编码规范 (14)(三)系统模块的详细设计 (15)六、系统测试 (27)七、系统的运行 (28)(一)硬件约束 (28)(二)系统运行环境 (28)结束语 (29)参考文献 (29)论文摘要通讯录管理系统是方便同学间交流、联系而设计的一个系统。

它主要分为两大部分,一个是同学录管理系统,一个是同学之间交流的区域。

该系统由三个要素组成,分别是:管理员、好友和其他成员,他们之间相互联系,形成了一个有机的整体。

为提高用户对该系统的满意,必须正确处理他们之间的关系。

本系统总体上分为三大界面:登陆界面、注册页面和管理页面。

具体是新用户在登陆界面有个注册帐号连接,输入无误后可进入注册页面,注册完后用户可以加入自己的好友,用户还可以自己注册个人信息。

通讯录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统,它方便了用户对众多同学、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。

【关键词】VS .NET 2008 数据库数据库组件E-R图前言通讯录管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,一方面要求建立起数据一致性和完整性强、数据安全性好的库另一方面则要求应用程序功能完备,易使用等特点。

个人通讯录管理系统课程设计

个人通讯录管理系统课程设计

个人通讯录管理系统课程设计一、引言个人通讯录管理系统是一种方便用户管理联系人信息的软件,它可以帮助用户方便地存储、查找、编辑和删除联系人信息。

本文将介绍一个基于Java语言开发的个人通讯录管理系统的课程设计。

二、需求分析在开发个人通讯录管理系统之前,我们需要进行需求分析,明确系统所需要实现的功能。

根据实际需求,本系统需要实现以下功能:1. 用户登录:用户可以通过输入用户名和密码登录系统。

2. 联系人管理:用户可以添加、查找、编辑和删除联系人信息。

3. 分组管理:用户可以将联系人分组,并对不同分组进行管理。

4. 备份与恢复:用户可以备份和恢复联系人信息。

5. 数据统计:系统可以对联系人信息进行统计,并生成相应的报表。

三、概要设计概要设计是指在需求分析基础上,对系统进行整体设计,确定各模块之间的关系。

本系统采用MVC(Model-View-Controller)架构模式,具体如下:1. 模型层(Model):负责数据存储和处理,包括用户信息、联系人信息等数据操作。

2. 视图层(View):负责数据展示和用户交互界面的呈现,包括登录界面、主界面、联系人管理界面等。

3. 控制层(Controller):负责处理用户请求和数据流转,包括用户登录、联系人管理、分组管理、备份与恢复等功能。

四、详细设计在概要设计的基础上,我们需要进行详细设计,确定各个模块的具体实现方式。

本系统主要包括以下几个模块:1. 用户登录模块:用户输入用户名和密码后,系统会进行验证,验证成功后跳转到主界面。

2. 联系人管理模块:用户可以添加、查找、编辑和删除联系人信息。

添加联系人时需要输入姓名、电话号码等信息;查找联系人时可以按照姓名或电话号码进行查找;编辑联系人时可以修改姓名、电话号码等信息;删除联系人时需要先选择要删除的联系人。

3. 分组管理模块:用户可以将联系人分组,并对不同分组进行管理。

添加分组时需要输入分组名称;将联系人移动到不同的分组中时需要先选择要移动的联系人。

通讯录的设计与实现

通讯录的设计与实现

通讯录的设计与实现一)系统设计目的通讯录管理系统是我的设计题目,文档为该系统的概要设计说明书,详细阐述了对用户所提出需求的设计方案,对系统中的各项功能需求、技术需求、实现环境及所使用的实现技术进行了明确定义。

同时,对软件应具有的功能和性能及其他有效性需求也进行了定义。

也可以用于开发项目的项目管理人员、项目开发人员和项目维护人员阅读,或作为今后从事此系统开发及维护人员的技术参考资料二)系统目标应用本系统,可以更方便便捷完成日常生活中通讯录的管理,能适应新时代的需要。

三)系统的基本要求程序运行结果正确,操作方便,界面美观,逻辑层次清楚,程序结构合理,文档规范清晰。

(四)系统的主要功能(1)通信录:一览通信录管理通信录对联系人的基本信息进行录入,修改。

联系人信息应该包括:、姓名、职务、E-Mail、单位、家庭住址、联系电话。

(2)查询●按电话号码查询●按姓名查询(3)增加、删除、保存、读写文件(4)退出系统断开与数据库的连接,退出系统。

五)软件开发平台的选择选用Microsoft提供的V isual Studio套件里的Visual C++。

因为Visual C++编程环境不仅是个非常优秀的编译器,而且还将面向对象的软件设计理念与可视化编程环境融为一体。

还有在Visual C++上设计程序操作简单,程序通俗易懂.电脑名称:联想操作系统:Windows XP2 (English V ersion) 应用软件:Visual C++ 6.0 ,Visual Assist X六)总体设计2、系统流程图(1)权限验证与主菜单程序流程图(2)修改联系人程序流程图(3)添加联系人程序流程图(4)删除联系人程序模块(5)查询联系人程序模块3、逻辑设计联系人:4.系统运行界面赏析3.系统评价系统评价就是客观,公正的从各个方面评价系统的各项功能。

本部分将具体从三方面阐述:优点,缺点以及将来可能提出的要求。

4.1 系统的特点(1)流程符合选修课系统的基本要求。

通讯录管理系统毕业设计(两篇)2024

通讯录管理系统毕业设计(两篇)2024

引言概述:通讯录管理系统是一种用于管理联系人信息的软件,它能够为用户提供便捷的联系人管理和信息查询功能。

本文将继续介绍通讯录管理系统的设计和实现,重点关注系统的用户界面设计、数据存储与管理、通讯录的分类与搜索功能、用户权限管理以及通讯录系统的扩展与升级。

正文内容:1.用户界面设计1.1设计原则:用户友好性、易用性和美观性原则1.2主界面设计:主界面布局、功能模块展示、导航设计1.3交互设计:交互方式、操作流程、反馈机制1.4响应式设计:适配多种设备和屏幕分辨率2.数据存储与管理2.1数据库设计:确定实体和属性、建立表结构、定义关系2.2数据库连接:连接数据库、读写操作、异常处理2.3数据备份与恢复:数据备份策略、备份文件管理、数据恢复机制2.4数据安全性:权限控制、数据加密、数据完整性3.通讯录的分类与搜索功能3.1通讯录分类:基本分类和用户自定义分类3.2联系人添加与编辑:输入验证、字段定义、数据关联3.3联系人查询:关键字查询、条件过滤、多条件组合查询3.4联系人导入导出:支持多种数据格式、数据匹配与转换、导入导出策略3.5通讯录分享与同步:用户权限设置、跨设备同步、冲突解决4.用户权限管理4.1用户注册与登录:用户信息获取、身份验证、登录状态管理4.2用户权限分配:管理员与普通用户权限区分、权限控制细化4.3用户信息管理:个人信息修改、密码重置、账号注销4.4安全性保护:登录失败锁定、密码加密、会话管理5.通讯录系统的扩展与升级5.1模块化设计:可插拔式功能模块、模块间接口定义5.2扩展性设计:支持插件开发、动态加载与卸载5.3性能优化:数据索引优化、查询优化、缓存机制5.4系统升级:版本管理、更新提示、升级策略总结:通过上述的详细阐述,我们可以看到,通讯录管理系统涵盖了用户界面设计、数据存储与管理、通讯录的分类与搜索功能、用户权限管理以及通讯录系统的扩展与升级等多个关键领域。

在该系统的设计过程中,我们需要重点关注用户友好性、数据安全性和系统的可扩展性。

通讯录管理系统课程设计报告

通讯录管理系统课程设计报告

通讯录管理系统课程设计报告一、引言通讯录管理系统是一种用于存储和管理联系人信息的应用程序,它可以帮助用户方便地记录和查找各种联系人信息。

在本课程设计报告中,我们将讨论通讯录管理系统的设计和实现过程,以及系统的功能特点和操作流程。

二、需求分析通讯录管理系统需要具备以下基本功能: 1. 添加联系人信息:用户可以输入姓名、电话号码、电子邮件地址等信息来添加新的联系人。

2. 查找联系人信息:用户可以通过姓名或电话号码等关键词来查找已添加的联系人信息。

3. 修改联系人信息:用户可以对已有联系人信息进行修改和更新。

4. 删除联系人信息:用户可以选择删除不需要的联系人信息。

5. 显示所有联系人信息:系统可以按照一定的格式将所有联系人信息展示给用户。

三、系统设计1. 数据结构为了存储联系人信息,我们可以使用一个包含姓名、电话号码、电子邮件地址等字段的结构体来表示每个联系人。

可以使用链表或数组来组织所有联系人信息。

2. 模块设计通讯录管理系统可以划分为以下几个模块: - 添加联系人模块:实现添加新联系人信息的功能。

- 查找联系人模块:实现根据关键词查找联系人信息的功能。

- 修改联系人模块:实现对已有联系人信息进行修改和更新的功能。

- 删除联系人模块:实现删除不需要的联系人信息的功能。

- 显示联系人模块:实现将所有联系人信息按照一定格式展示给用户的功能。

3. 用户界面设计用户界面应该简洁明了,包括各个功能的按钮或选项,以及输入框和显示信息的区域。

用户应该能够方便地进行各种操作和查看联系人信息。

四、系统实现1. 数据存储可以使用文件来存储联系人信息,也可以使用数据库来进行数据持久化。

2. 界面实现可以使用图形界面或命令行界面来实现用户交互功能,不同的界面设计会影响用户体验。

3. 功能实现根据需求分析中的功能,实现各个模块的功能代码,确保系统可以正确地完成相关操作。

五、功能测试在系统实现完毕后,需要进行功能测试,确保系统的各个功能都能正常运行,并且符合需求。

毕业设计论文(通讯录管理系统)

毕业设计论文(通讯录管理系统)

毕业设计(论文)题目通讯录管理系统的设计与实现姓名车维学号 0810311313所在学院计算机学院专业班级 08计算三班指导教师谢芳日期 2012年 5 月 30 日毕业设计(论文)任务书院(系) 计算机学院指导教师谢芳职称讲师学生姓名车维专业(班级)08计算3班学号0810311313 设计题目通讯录管理系统设计内容、目标和要求通讯录管理系统在如今信息繁乱的社会是一款不可或缺的软件,为了能及时找到自己所需联系的人,为了储存以后可能对自己有帮助的人脉等等。

为了以后能更方便人们之间的联系,所以我的选题就是通讯录管理系统。

本次设计的目标在于研究通讯录管理系统方案的设计,实现一个简洁的界面模式系统。

本系统包含以下几个功能模块:系统管理、信息管理、查询系统。

进度要求:1)收集相关材料阶段:2012.3.10—2012.3.202)需求分析与构造原型阶段:2012.3.21—2012.3.263)系统设计阶段:2012.3.27—2012.4.24)数据库设计阶段:2012.4.3—2012.4.105)系统实现阶段:2012.4.11—2012.5.136)毕业论文初稿书写:2012.5.14—2012.5.207)系统与毕业论文完善:2012.5.21—2012.5.31指导教师签名:年月日基层教学单位审核院(系)审核毕业设计(论文)学生开题报告课题名称通讯录管理系统课题来源相关资料课题类型D指导教师谢芳学生姓名车维学号0810311313专业班级08计算3班本课题的研究现状、研究目的及意义随着网络及现代通信技术的发展,人们之间的联系越来越便捷,这也使得同时与许多人保持联系成为可能,而单纯依靠人脑已经很难记住所有人的联系方式,使用传统的纸面的方式记录联系人信息时,在联系人比较多时查找将非常困难。

因此,本软件形式实现的通讯录成为了许多人保持联系方式的首选。

当前在许多软件中都附带了通讯录功能,部分手机及一些PDA类的产品也提供了功能不尽一致的通讯录功能。

通讯录查询系统课程设计

通讯录查询系统课程设计

通讯录查询系统课程设计一、课程目标知识目标:1. 理解通讯录查询系统的基本概念和原理;2. 掌握运用编程语言设计简单的通讯录查询功能;3. 学会使用数据结构存储和管理通讯录信息;4. 了解数据库的基本操作,实现通讯录信息的存取。

技能目标:1. 能够运用所学知识,独立设计并实现一个通讯录查询系统;2. 通过编程实践,提高问题分析、设计和解决问题的能力;3. 学会使用调试工具,对程序进行调试和优化;4. 培养团队协作和沟通能力,共同完成项目任务。

情感态度价值观目标:1. 激发学生对计算机科学的兴趣和热情,培养主动学习的习惯;2. 培养学生的创新意识,敢于尝试新方法解决问题;3. 增强学生的责任感,认识到技术对社会的重要性;4. 引导学生关注通讯技术在生活中的应用,体会科技发展的价值。

本课程针对高年级学生,结合教材内容,以实用性为导向,旨在提高学生的编程实践能力和问题解决能力。

课程通过设计一个通讯录查询系统,将理论知识与实践相结合,使学生能够将所学知识运用到实际项目中。

课程目标分解为具体的学习成果,以便于教学设计和评估,确保学生能够达到预期学习效果。

二、教学内容1. 通讯录查询系统概述:介绍通讯录查询系统的基本概念、功能及在实际中的应用;- 相关章节:教材第3章“数据库技术应用”2. 数据结构基础:讲解线性表、树等基本数据结构,分析其在通讯录查询系统中的应用;- 相关章节:教材第2章“数据结构”3. 编程语言基础:运用C++/Java等编程语言,实现通讯录查询功能;- 相关章节:教材第4章“面向对象程序设计”4. 数据库操作:介绍数据库的基本操作(增、删、改、查),实现通讯录信息的存取;- 相关章节:教材第5章“数据库设计与应用”5. 程序调试与优化:学习使用调试工具,对程序进行调试和优化;- 相关章节:教材第6章“程序调试与测试”6. 项目实践:分组进行项目实践,设计并实现一个通讯录查询系统;- 相关章节:教材第8章“综合项目实践”教学内容按照课程目标进行科学性和系统性的组织,教学大纲明确教学安排和进度。

课程设计--通讯录管理系统的设计与实现

课程设计--通讯录管理系统的设计与实现

课程设计--通讯录管理系统的设计与实现课程设计(论文)任务书一、课程设计(论文)题目通讯录管理设计二、课程设计(论文)工作自 2013 年 9 月 23 日起至 2013 年 10 月 13 日止。

三、课程设计(论文) 地点: 信息科学技术学院四、课程设计(论文)内容要求:1.本课程设计的目的(1)掌握java语言的程序设计方法;(2)理论联系实际,进一步提高学生的软件开发技术;(3)培养学生分析、解决问题的能力;(4)提高学生实践论文撰写能力。

2.课程设计的任务及要求1)课程设计任务:(1)设一个通信录由以下几项数据信息构成:数据项类型姓名字符串地址字符串邮政编码字符串电话号码字符串(2)1.主要功能:(1)能建立、查询、修改和增删学生通讯录(2)能够按多种方式进行查询(3)界面友好,易于操作2)课程设计论文编写要求(1)课程设计任务及要求(2)设计思路--工作原理、功能规划(3)详细设计---数据分析、算法思路、类设计、功能实现(含程序流程图、主要代码及注释)、界面等。

(4)运行调试与分析讨论---给出运行屏幕截图,分析运行结果,有何改进想法等。

(5)设计体会与小结---设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。

(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)(7)报告按规定排版打印,要求装订平整,否则要求返工;(8)课设报告的装订顺序如下:封面---任务书---中文摘要---目录----正文---附录(代码及相关图片)(9)严禁抄袭,如有发现,按不及格处理。

4)参考文献:(1)《java面向对象程序设计》董晓国清华大学出版社(2)《java程序设计教程》迟丽华清华大学出版社学生签名:陈万洲2013 年12 月24 日通讯录管理系统的设计与实现【中文摘要】这个基于java编写的个人通讯录管理系统含有添加、删除、查找等基本功能,采用的是JDBC-ODBC桥实现数据库的连接,ODBC数据源名称chengwz.mbd。

综合性实验项目“通讯录管理系统的设计”的内容

综合性实验项目“通讯录管理系统的设计”的内容

综合性尝试工程“通讯录办理系统的设计〞的内容本尝试工程是对本课程大局部常识点如数据库设计、表单设计、程序设计的综合应用,要求设计出一个具有登录验证、数据输入、数据显示、点窜和查询功能的学生个人通讯录办理系统。

尝试要求:1、数据库设计:成立通讯录办理系统的数据库,通讯录包罗姓名、班级、、Email、QQ号等字段。

2、系统布局设计:操纵模块化设计思想,将系统进行模块划分,并给出系统功能布局图。

3、功能模块设计〔包罗但不限于以下内容〕:〔1〕登录功能:要求登录后才可以进入通讯录办理界面。

〔2〕数据输入功能:可以增加记录。

〔3〕数据显示功能:可以显示每笔记录。

〔4〕查询功能:可以按姓名查找通讯录信息。

〔5〕点窜功能:可以点窜通讯录信息。

〔6〕删除功能:可以按姓名删除通讯录信息。

〔7〕应提供一个系统主界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美不雅。

4、程序调试5、组装发布,生成应用程序,设计成品上传到FTP效劳器上。

6、设计陈述:内容包罗本程序的功能描述、程序设计思想系统现有的问题,系统开发的收获与提高。

尝试条件:PIV以上计算机,至少安装Visual FoxPro6.0,可接入互联网。

学生能力培养的重点:培养学生数据库设计的能力,培养学生程序设计的能力,使学生掌握系统开发的一般过程,培养学生协作的能力。

附:“通讯录办理系统的设计〞参考【目的要求】通过“通讯录办理系统〞的开发案例,全面安定和熟练掌握VFP应用系统开发常识。

【内容】一、需求阐发随着信息社会的高速开展,人与人之间的联系越来越频繁,通讯方式越来越多样化,如何包管与伴侣、同学、同事、带领、亲戚等之间的联系,并能便利快捷的查找、记录、点窜其相关通讯信息。

仅靠以前单独的手工记录已远远不克不及满足当前的需要。

开发一个通讯录办理系统,借助计算机可以便利、快捷、灵活的办理个人的伴侣及相关人员的通讯信息,了解友人相关信息,帮忙与友人保持联络。

通讯录管理系统课程设计报告总结

通讯录管理系统课程设计报告总结

通讯录管理系统课程设计报告总结一、引言通讯录管理系统作为一种常见的信息管理工具,在日常生活中发挥着重要作用,能够帮助人们方便地管理和查找联系人信息。

本次课程设计旨在设计和实现一个简单的通讯录管理系统,运用所学的软件开发技术和方法,提升学生的实际项目开发能力。

二、需求分析本系统主要包括以下功能模块: 1. 用户登录和注册:用户可以通过用户名和密码登录系统,也可以注册新用户; 2. 通讯录管理:用户可以添加、删除、修改联系人信息,并可以按照姓名、电话号码等字段进行排序和搜索; 3. 导入和导出:用户可以将通讯录数据导出到文件中,也可以从文件中导入数据; 4. 权限管理:管理员可以对用户进行管理,设定不同用户的权限和角色。

三、设计与实现本系统采用Python语言进行开发,使用了Django框架进行Web应用的搭建,并结合SQLite数据库实现数据的存储和管理。

系统的前端页面采用HTML、CSS和JavaScript进行设计,实现了用户友好的界面交互。

在系统的设计过程中,我们遵循了软件工程的相关原则和方法,包括需求分析、概要设计、详细设计、编码和测试等阶段。

通过团队合作,我们按照功能模块分工合作,每位成员负责不同的部分,最终将各部分整合在一起进行测试和优化。

四、测试与优化在系统开发过程中,我们进行了严格的测试工作,包括单元测试、集成测试和系统测试等,确保系统的功能正常运行和性能优秀。

在测试过程中,我们发现了一些问题并对其进行了优化,提高了系统的稳定性和用户体验。

五、总结与展望通过本次通讯录管理系统课程设计,我们深入了解了软件开发的整个流程,提升了团队协作能力和项目管理能力。

在未来的学习和工作中,我们将继续探索软件开发领域,不断提高自己的技术水平,为社会和行业做出更多贡献。

以上是本次通讯录管理系统课程设计的报告总结,希望能够对读者有所启发和帮助。

感谢大家的支持与关注!。

通讯录管理系统的设计与实现

通讯录管理系统的设计与实现

通讯录管理系统设计与实现一、内容和要求(1)完成通信录信息的管理,包括添加、修改、删除、查询功能。

尽量丰富联系人的各项信息。

(2)能够根据联系的信息单独或分类查询。

(3)联系人的生日提醒功能。

(4)数据存储功能可以使用文件的块读写操作完成,也可以使用SQLite数据库(要学习如何用C/C++连接SQLite数据库)二、需求分析(1)添加:在系统中添加新成员,并保存在文件“通讯录.txt”中;(2)修改:读入要修改成员的姓名,按照提示进行修改;(3)删除:读入要删除成员的姓名,将进行删除;(4)保存:将所有成员数据保存在文件“通讯录.txt”中;(5)查找:读入要查找成员的姓名,查找成员将显示在屏幕上;三、实现代码#include<iostream>#include<string>#include<fstream>using namespace std;static int count=0;class telephone{char name[20]; //姓名char number[17]; //电话号码char birthday[18]; //生日int year,month,day,hour,minute,age;public:telephone(char *na,char *nu,int y,int m,int d,int h,int mi,int a);telephone(){};// ~telephone();char *getname(); //获得姓名char *getnumber(); //获得电话号码int getyear(); //获得年份int getmonth(); //获得月份int getday(); //获得日int gethour(); //获得小时int getminute(); //获得分钟int getage(); //获得年龄void display(); //输出信息void input(); //添加信息void insert(); //插入信息void Delete(); //删除信息void change(); //改变信息static int getcount();};//int telephone::count=0;telephone::telephone(char *na,char *nu,int y,int m,int d,int h,int mi,int a){strcpy(name,na);strcpy(number,nu);year=y;month=m;day=d;hour=h;minute=mi;age=a;// count++;}char *telephone::getname() //获得姓名{return name;}char *telephone::getnumber() //获得电话号码{return number;}int telephone::getyear() //获得年份{return year;}int telephone::getmonth() //获得月份{return month;}int telephone::getday() //获得日{return day;}int telephone::gethour() //获得小时{return hour;}int telephone::getminute() //获得分钟{return minute;}int telephone::getage() //获得年龄{return age;}void telephone::display() //输出信息{cout<<"姓名:"<<name<<endl;cout<<"年龄:"<<age<<endl;cout<<"号码:"<<number<<endl;cout<<"生日:"<<hour<<":"<<minute<<" "<<year<<"-"<<month<<"-"<<day<<endl;}void telephone::input() //输入信息{char na[20];cout<<"输入姓名:";cin>>na;strcpy(name,na);cout<<"输入年龄:";cin>>age;cout<<"输入电话号码:";cin>>number;cout<<"输入生日(按时、分、年、月、日的顺序):";cin>>hour>>minute>>year>>month>>day;count++;}void telephone::insert () //插入信息{if(!age)input();}void telephone::Delete () //删除信息{strcpy(name,(this+1)->name);strcpy(number,(this+1)->number);hour=(this+1)->hour;minute=(this+1)->minute;year=(this+1)->year;month=(this+1)->month;day=(this+1)->day;age=(this+1)->age;count--;}void telephone::change() //改变信息{cout<<"please input again!"<<endl;input();}int telephone::getcount(){return count;}const int N=20;void menu();void createfile(char *a,telephone *array);void outputtel(telephone *array);void inputtel(telephone *array);int searchtel(telephone *array,char *na);bool inserttel(telephone *array);bool Deletetel(telephone *array,char *na);int main(){telephone array[N];int choice; //读入选项do{menu();cout<<"please input your choice:";cin>>choice;if(choice>=0 && choice<=6)switch(choice){case 1:inputtel(array); break;case 2:cout<<"input the name searched"<<endl;char na[20];cin>>na;int i;i=searchtel(array,na);if(i==N)cout<<"无此人!\n";elsearray[i].display();break;case 3:outputtel(array);break;case 4:if(inserttel(array))cout<<"成功插入一条记录!"<<endl;elsecout<<"插入失败!"<<endl;break;case 5:cout<<"input the name deleted:"<<endl;char na1[20];cin>>na1;// system("cls");if(Deletetel(array,na1))cout<<"成功删除一条记录!"<<endl;elsecout<<"删除失败!"<<endl;break;case 6:cout<<"input the name changed:"<<endl;cin>>na;i=searchtel(array,na);if(i==N)cout<<"没有此联系人,改变失败"<<endl;elsecout<<"被改变联系人的信息为:"<<endl;array[i].display ();cout<<"改变后的信息为:"<<endl;array[i].Delete ();array[i].change ();break;default:break;}}while(choice);createfile("通讯录.txt",array);return 0;}void menu() //定义菜单函数{cout<<"*********1.添加联系人*********"<<endl;cout<<"*********2.查询联系人信息*********"<<endl;cout<<"*********3.浏览联系人信息*********"<<endl;cout<<"*********4.插入联系人*********"<<endl;cout<<"*********5.删除联系人*********"<<endl;cout<<"*********6.改变联系人信息*********"<<endl;cout<<"*********0.退出*********"<<endl;}void createfile(char *a,telephone *array){ofstream outf(a);if(!outf){cout<<"can't open the file\n";return;}for(int i=0;i<count;i++){outf<<"姓名:";outf<<" "<<array[i].getname ()<<endl;outf<<"电话:";outf<<" "<<array[i].getnumber ()<<endl;outf<<"年龄:";outf<<" "<<array[i].getage ()<<endl;outf<<"生日:";outf<<" "<<array[i].gethour ()<<array[i].getminute();outf<<array[i].getyear ()<<"-"<<array[i].getmonth ()<<"-"<<array[i].getday ()<<endl;}outf.close ();}void outputtel(telephone *array) //输出对象信息{cout<<"学生总数="<<count<<endl;for(int i=0;i<count;i++)array[i].display();}int searchtel(telephone *array,char *na) //按姓名查找{int i,j=N;for(i=0;i<N;i++)if(strcmp(array[i].getname(),na)==0){j=i;break;}return j;}void inputtel(telephone *array) //输入对象元素{char ch;int i=0;do{if(telephone::getcount()==N)cout<<"人数已满,无法继续录入!"<<endl;if(!array[i].getage())array[i++].input();array[count].input();cout<<"继续输入吗?(Y or N)"<<endl;cin>>ch;}while(ch=='Y');}bool inserttel(telephone *array) //根据年龄插入{if(telephone::getcount()==N){cout<<"人数已满,无法插入!"<<endl;return false;}// else// for(int j=0;j<N;j++)// {// if(array[j].getage())// {// cout<<"无法插入!";// return false;// }// }for(int i=0;array[i].getage() ;i++);array[i].insert();return true;}bool Deletetel(telephone *array,char *na) //按姓名删除{if(telephone::getcount()==0){cout<<"没有记录,无法删除!"<<endl;return false;}int i=searchtel(array,na);if(i==N){cout<<"查无此人,无法删除!"<<endl;return false;}array[i].Delete();return true;}四、运行结果。

数据结构-通讯录管理系统的设计与实现汇总

数据结构-通讯录管理系统的设计与实现汇总

数据结构-通讯录管理系统的设计与实现汇总简介本篇文档介绍了如何使用数据结构实现一个简单的通讯录管理系统。

包括系统的需求分析、数据结构选择、程序设计与实现等方面。

需求分析通讯录管理系统的核心功能是记录联系人信息,包括姓名、电话号码、电子邮件地址等。

该系统需要支持以下操作:1.添加联系人2.删除联系人3.查找联系人4.修改联系人信息5.显示所有联系人除了核心功能以外,通讯录管理系统还需要具有以下扩展功能:1.根据姓名或电话号码排序2.将联系人信息导入/导出文件3.显示某个分组的联系人数据结构选择为了支持以上功能,我们需要选择合适的数据结构来存储联系人信息。

常见的数据结构有数组、链表、栈、队列、哈希表等。

对于通讯录管理系统,我们可以使用链表来存储联系人信息。

每个节点包含一个指向下一节点的指针和联系人信息。

这种方式可以方便地插入、删除联系人信息,同时节省存储空间。

排序可以使用快速排序(QSort)、归并排序等算法实现。

导入/导出文件可以使用文件读写操作实现。

分组显示则可以使用多个链表来分别存储不同分组的联系人信息。

程序设计与实现以下是通讯录管理系统的程序设计与实现的主要流程:1.定义联系人结构体,包含姓名、手机号、邮箱等字段。

2.定义联系人节点结构体,包含指向下一节点的指针和联系人信息结构体。

3.实现通讯录管理系统功能函数,包括添加联系人、删除联系人、查找联系人、修改联系人信息、显示所有联系人等。

4.实现排序算法,如快速排序和归并排序。

5.实现文件读写操作,包括将联系人信息导入/导出文件。

6.实现分组显示功能,使用不同链表存储不同分组的联系人信息。

以上是通讯录管理系统的设计与实现汇总。

在数据结构的选择上,我们选择了链表作为存储通讯录联系人信息的数据结构,使用排序算法进行排序,使用文件读写操作进行导入/导出操作,使用多个链表实现分组显示功能。

在功能实现上,分别实现了添加联系人、删除联系人、查找联系人、修改联系人信息、显示所有联系人等核心功能以及排序、导入/导出、分组显示等扩展功能。

通讯录查询系统课程设计

通讯录查询系统课程设计

通讯录查询系统课程设计一、引言通讯录是一种重要的工具,用于管理和存储个人或组织成员的联系方式。

通讯录的主要功能是方便快捷地查找、添加、编辑和删除联系人的信息。

为了更好地管理和利用通讯录,设计一个通讯录查询系统是非常有必要的。

本文将介绍通讯录查询系统的设计。

二、系统需求1. 用户管理:系统应该提供用户注册、登录、修改密码等功能,以便不同的用户可以访问其私有的通讯录。

2. 通讯录管理:系统应该允许用户创建新的通讯录,包括通讯录的名称、描述和权限设置。

通讯录可以设为公开、仅自己可见或仅指定可见。

3. 联系人管理:用户可以在通讯录中添加、编辑、删除联系人的信息。

联系人信息包括姓名、电话、邮箱等,可以根据这些信息进行快速查询。

4. 查询功能:系统应该提供多种查询方式,如根据姓名、电话、邮箱等进行查询,以便用户可以快速找到所需的联系人。

5. 授权管理:通讯录的创建者可以授权其他用户对其通讯录的访问权限,包括查看、编辑等。

用户可以根据自己的需求来设置通讯录的权限。

6. 界面友好:系统应该具有简洁、直观的界面,方便用户快速上手使用。

同时,系统的响应速度应该快,以便提高用户的使用体验。

三、系统设计1. 技术选型:本系统选用前端技术使用HTML、CSS和JavaScript,并使用后端技术使用Java语言开发。

2. 数据库设计:系统使用关系型数据库来存储用户信息、通讯录信息和联系人信息。

可以选择MySQL或者Oracle等数据库管理系统。

3. 系统架构:系统采用B/S架构,即浏览器/服务器架构。

用户通过浏览器访问系统,向服务器发出请求,服务器进行处理并返回响应。

4. 功能模块划分:根据系统需求,将系统划分为用户管理模块、通讯录管理模块、联系人管理模块、查询功能模块和授权管理模块。

5. 界面设计:系统的界面应该简洁明了,方便用户操作。

可以采用响应式设计,使界面在不同设备上都能够正常显示和操作。

6. 系统流程:用户首先需要注册和登录系统,然后可以创建自己的通讯录,并添加联系人信息。

数据结构课程设计_通讯录查询系统的设计与实现

数据结构课程设计_通讯录查询系统的设计与实现

Word格式通讯录查询系统的设计与实现完美整理一、需求分析1、问题描述为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的电话与地址。

设计散列表存储,设计并实现通讯录查找系统。

2、基本要求a.每个记录有下列数据项:电话号码、用户名、地址;b.从键盘输入各记录,分别以电话号码为关键字建立散列表;c.采用二次探测再散列法解决冲突;d.查找并显示给定电话号码的记录;e.通讯录信息文件保存。

二、概要设计1.数据结构本程序需要用到两个结构体,分别为通讯录 message以及哈希表HxList2.程序模块本程序包含两个模块,一个是实现功能的函数的模块,另一个是主函数模块。

系统子程序及功能设计本系统共有三个子程序,分别是:int Hx(long long key,int data)//哈希函数void BulidHx(HxList &L)//建立通讯录int Search(HxList &L)//查找3.各模块之间的调用关系以及算法设计主函数调用BulidHx以及Search函数。

函数BulidHx调用函数Hx。

三、详细设计1.数据类型定义typedef struct{char *name;char *add;long long phonenumber;}message;typedef struct{message *list;int number;//记录数}HxList;2.系统主要子程序详细设计a. 建立通讯录void BulidHx(HxList &L)//建立通讯录{FILE *f = fopen("E:\\tongxunlu.txt", "w");char buf[20]={0},str[20]={0};long long key;cout<<"输入要建立的记录数:";cin>>L.number;L.number+=1;L.list=new message[L.number];//分配哈希表的存储空间for(int i=0;i<L.number;i++){L.list[i].phonenumber=-1;}L.list[L.number-1].name=NULL;L.list[L.number-1].add=NULL;cout<<"输入记录信息(电话号码用户名地址)"<<endl; for(int i=0;i<L.number-1;i++){cin>>key>>buf>>str;int pose=Hx(key,L.number);//获取理论上的存储位置if(L.list[pose].phonenumber==-1){}else{//用二次探测再散列法解决冲突//1^2 -1^2 2^2 -2^2int di,count=1;xunhuan: if(count%2==0)di=-(count/2)*(count/2);elsedi=((count/2)+1)*((count/2)+1);int site=Hx(key+di,L.number);if(site>=0){if(L.list[site].phonenumber==-1){pose=site;}else{count++;goto xunhuan;}}else{site=L.number-abs(site);if(L.list[site].phonenumber==-1){pose=site;}else{count++;goto xunhuan;}}}L.list[pose].phonenumber=key;fprintf(f,"%lld",key);fprintf(f," ");L.list[pose].name=new char[strlen(buf)+1];strcpy(L.list[pose].name,buf);fprintf(f,"%s",buf);fprintf(f," ");L.list[pose].add=new char[strlen(str)+1];strcpy(L.list[pose].add,str);fprintf(f,"%s",str);fprintf(f,"\n");}}b.查找int Search(HxList &L)//查找{long long key;cout<<"输入要查找记录的关键字(电话号码):";cin>>key;int pose=Hx(key,L.number);//计算理论上的位置if(L.list[pose].phonenumber==key){}else{int count=1,di;//二次探测再散列,查找xunhuan: if(count%2==0){di=-(count/2)*(count/2);}else{di=((count/2)+1)*((count/2)+1);}int site=Hx(key+di,L.number);if(site>=0){if(L.list[site].phonenumber==key){pose=site;}else{count++;if(L.list[site].phonenumber==-1){cout<<"没有找到"<<endl;return -1;//没有找到}goto xunhuan;}}else{site=L.number-abs(site);if(L.list[site].phonenumber==key){pose=site;}else{count++;if(L.list[site].phonenumber==-1){cout<<"没有找到"<<endl;return -1;//没有找到}goto xunhuan;}}}if(L.list[pose].phonenumber==key){cout<<"电话号码\t"<<"用户名\t"<<"地址"<<endl;cout<<L.list[pose].phonenumber<<"\t"<<L.list[pose].name<<"\t"<<L.list [pose].add<<endl;return pose;}}四、测试与分析1.显示主菜单,运行程序可以显示出如下界面。

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现(总5页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--学生通讯录管理系统的设计与实现问题描述:纸质的通讯录已经不能满足实际需求,容易丢失,查找困难等问题是纸质通讯录所不能克服的缺点。

“学生通讯录管理系统”是为了帮助老师、同学,或者其他一些需要使用的通讯录的人员进行管理和应用的一种应用程序。

需求分析:1)输入数据建立通讯录。

2)查询通讯录中满足要求的信息。

3)插入新的通讯录信息。

4)删除不需要的通讯录信息。

5)查看所有的通讯录信息。

主界面设计要求:1)通讯录的建立2)插入通讯录记录3)查询通讯录记录4)删除通讯录记录5)显示通讯录记录6)退出系统设计要求:A.建立通讯录时,每个学生的信息包括:学号,姓名,电话。

B.查找时,学号、姓名、电话均可以作为查询字段。

C.查看所有的通讯录信息时,所有记录需要时有序的(按学号排序,按姓名排序(字典序),按电话号码排序)。

D.存储结构:要求使用顺序存储结构。

E.数据使用:使用本班级的具体信息。

需求分析:本次设计目的是学生信息管理系统,可存入每个学生的基本信息,所有学生信息都可根据名字、学号、电话、邮箱进行查询,也都可以根据这四个基本信息检索到一个学生并删除其数据。

输入形式:,以文件形式进行输入。

输出形式:根据不同的输入进行不同的操作。

达到功能:能插入一个学生的信息,能删除一个学生的信息,能查询一个学生的信息。

测试数据:班上70个同学的基本数据。

概要设计:数据类型:顺序链表 ArrayList类学生数据结构:StuData类包含name、id、phone、email四个String基本类型。

所有操作写在Structure中,包含insert、remove、query、printAll。

Main函数用Java标准输入,循环输入,用switch判断输入进行各种操作,1进行建立信息系统从文件中读入操作,2进行插入一个学生数据的功能,3进行查询信息的操作,4进行删除通讯记录的操作,5进行打印所有学生信息的功能,6代表退出系统。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

if(H->elem[pp]!=NULL && bj(tel,H->elem[pp]->tel) == 1)
{
printf("\n\t\t\t 查找成功\n\n");
printf("\t 姓 名 :
%s\n\n\t 电 话 号 码 :
址: %s\n",H->elem[pp]->name,H->elem[pp]->tel,H->elem[pp]->add);
}
else
printf("\n\t 此人不存在,失败!\n");
printf("\n\t 按 Esc 键,返回主菜单");
FRI tel;
int p,pp;
printf("\n\t 输入要查找的号码: ");
gets(tel);
p = HASH(tel);
pp = p;
while(H->elem[pp]!=NULL && bj(tel,H->elem[pp]->tel) == 0)
pp = collision(p,c);
void Menu() {
system("cls"); int n; printf("\n\n\n\n\n\n\n\n\n\t\t\t 输入 1(汉语)、 2(英语) 选择语言: "); scanf("%d",&n); system("cls"); if(n == 1) {
Pr1(); Pr2(); } }
void Pr6() {
printf("\n\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t\t 删除某人的信息\n\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
void Pr7() {
printf("\n\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t 在通信录的末尾写入新的信息\n\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
//电话薄记录数量 //人名的最大长度 //定义表长
typedef int Status;
typedef char FRI[MAX_SIZE];
int ss = 201;
typedef struct{ FRI name; FRI tel; FRI add;
}Record;
//用于帮助删除 //记录
typedef struct{ Record *elem[HASHSIZE]; int count; int size;
}
int bj(FRI tel1,FRI tel2) {
if(strcmp(tel1,tel2) == 0) return 1;
else return 0;
}
//字符串的比较
void Find(HashTable* H,int &c)
//查找
{
system("cls");
Pr4(0);
fflush(stdin);
void Pr8() {
printf("\n\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t 通讯录中已存信息\n\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
int NUM_BER = 0;
int collision(int p,int &c) {
int a,pp; a = c/2+1; while(a<HASHSIZE) {
if(a%2 == 0) {
c++; pp = (p + 2*a)%HASHSIZE; if(pp>0)
return pp; else
}
printf("\n\t\t\t 建 表 完 成 !\n\n\t\t 散 列 表 的 容 量 为 %d , 当 前 容 量 为 %d ",HASHSIZE,H->count); }
void getin(Record *a,HashTable *H) //键盘输入个人的信息
{
system("cls");
不为空,且相 等
四,测试与分析(见截图)
五,总结 在建立通讯录中,用了哈希表的建立,在哈希表中,是将字符型数字转化为整形数据,
并对哈希表的原有长度取余得到存储的位置,而得到的位置可能已被使用,故有调用了二次 哈希,并以最后处理的下标是否为非负,来决定是存储还是不存储。
在通信录的创建中,把输入的信息保存在一个数组里,通过输入的电话号码,将其转化 为数据,通过取余,找到它在哈希表的位置,如果位置冲突,就用二次探测处理。在查找中, 通过输入的电话号码,调用哈希表寻找它在哈希表的位置,并把它输出。
void Pr5() {
printf("\n\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t 修改某人的信息\n\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
(3)采用二次探测再散列法解决冲突;
(4)查找并显示给定电话号码的记录;
(5)通讯录信息文件保存。
二、概要设计
通过得到不同的字 符,实现不同的操作
创建通 讯录, 用哈希 表实 现,并 返回主 函数
查找操 作,并 返回主 函数
显示通 讯录中 的所有 信息, 并返回 主函数
推出整 个程序
文件的 存于 读,并 返回主 函数
void Pr2() {
printf("\t 按 b 键,创建新的通讯录\n\n"); printf("\t 按 c 键,在通信录的末尾写入新的信息\n\n"); printf("\t 按 d 键,查询某人的信息\n\n");
printf("\t 按 e 键,修改某人的信息\n\n"); printf("\t 按 f 键,删除某人的信息\n\n"); printf("\t 按 g 键,显示通讯录中的所有记录\n\n"); printf("\t 按 h 键,退出选单\n\n")到指定文件中\n\n"); printf("\t 按 j 键,从指定文件中读取通讯录中的记录\n"); printf("\t"); }
六,附录(源程序)
#include<stdio.h> #include<stdlib.h> #include<string.h> #include <conio.h> #include<windows.h>
//为了使用 getch()方法
#define MAXSIZE 200 #define MAX_SIZE 20 #define HASHSIZE 67 #define LEN sizeof(HashTable)
}HashTable;
//哈希表 //数据元素存储基址
//当前数据元素个数 //最大容量
void Pr1() {
printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t 通讯录系统的模拟实现\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
void Pr4(int i) {
printf("\n\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n"); printf("\t\t\t 查询某人的信息\n\n"); printf("\t\t* * * * * * * * * * * * * * * * * * * * * * * *\n\n"); }
gets(a[i].name);
printf("\n\t 输入其电话号码: ");
fflush(stdin);
gets(a[i].tel);
printf("\n\t 输入其地址: ");
fflush(stdin);
gets(a[i].add);
}
CreateHash(H,a);
//建立散列表存储
printf("\n\n\t 按 Esc 键,返回主菜单");
三、详细设计
开始
(创建)
建立的号
pp=HASH(tel )
HASH->elem

[pp]==NULL
相关文档
最新文档