通讯录课程设计报告
通讯录管理系统课程设计报告
通讯录管理系统课程设计报告一、课程设计背景随着信息化时代的到来,通讯录管理系统已经成为了人们日常生活中必不可少的一部分。
在这个快节奏的社会中,人们需要随时随地地获取和管理自己的联系人信息。
因此,设计一个高效、方便、易用的通讯录管理系统就显得尤为重要。
二、需求分析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语句来完成对数据库中表格的增删改查操作,并将结果返回给前端界面显示。
数据结构课程设计报告---通讯录
数据结构课程设计报告---通讯录## 一、项目背景随着信息科技的发展,现代社会通讯录的应用越来越普遍,满足了人们信息的获取和管理的需求。
本项目的设计目的在于使用面向对象的程序思想,以面向对象的方式它来实现对通讯录信息的管理,进而提高信息的管理效率,提升信息的可靠性和安全性,最终达到为社会实施科学管理的目的。
## 二、系统需求1. 界面美观、格式明确,有良好的友好提示。
2. 系统稳定性强,能承受短时间的高并发量使用。
3. 提供友好的系统操作界面,对用户操作进行一定的约束,方便用户操作。
4.提供有效的联系人信息管理功能,能够实现增删改查等操作。
5.支持联系人信息备份和恢复,以及密码设置。
6.能够防止任何人未经授权而访问系统,或者磁盘信息的泄露。
此系统的设计主要分为三大部分,即界面层、业务逻辑层和数据存储层。
界面层通过展示信息给用户,实现数据的输入及输出;业务逻辑层主要处理用户请求,实现对数据的操作;数据存储层通过文件存储数据,实现对联系人信息的永久保存。
本项目采用C++语言,以链表数据结构为基础,将用户的联系人存储在链表中,充分利用其动态性,实现联系人的增删改查操作.同时,为了提供更进一步的使用,增加了密码功能,对未授权访问进行防止,以及数据备份和恢复功能。
## 四、功能实现1. 界面设计:首先,根据系统所需要的功能,采用控制台方式,以文字提示形式,配以整齐美观的各项参数和信息,实现各项功能。
2. 加密控制:本系统实现授权登陆加密功能,使系统对未经授权的用户隐藏信息,以确保系统的安全性。
3. 测试功能:功能的测试旨在确保程序的完整性和正确性。
4. 管理功能:本系统实现联系人信息的增删改查操作,在这几项功能的实现过程中,使用链表数据结构,更好的实现程序的功能。
5. 修改密码功能:此功能实现用户可以修改自己的密码,以确保用户自己可以比较安全的使用系统,不会受到他人的侵犯。
6. 加载和存储数据:通过使用文件存储,实现数据的存储和读取,以及备份功能,实现对数据永久保存。
通讯录管理系统课程设计报告系统存储结构
通讯录管理系统课程设计报告系统存储结构一、引言通讯录管理系统是一种方便快捷地存储和管理联系人信息的应用程序。
在该系统中,数据的存储结构至关重要,它直接关系到系统的性能和稳定性。
本文将介绍通讯录管理系统的系统存储结构设计,包括数据的组织方式、存储介质选择等内容。
二、存储结构设计1. 数据的组织方式在通讯录管理系统中,联系人信息是系统中最主要的数据之一。
为了高效地存储和管理这些信息,我们选择采用数据库的方式进行组织。
数据库将联系人信息按照一定的结构进行组织和存储,方便系统对数据的检索和更新。
2. 数据库的选择在选择数据库时,我们考虑到系统的使用特点和性能要求,最终选择了关系型数据库。
关系型数据库具有良好的数据一致性和完整性,能够满足系统的数据管理需求。
同时,支持 SQL 查询语言的特性也使得对数据进行灵活的操作成为可能。
3. 数据表设计在关系型数据库中,数据是以表的形式进行存储的。
针对通讯录管理系统的需求,我们设计了以下几张表:•用户表:用于存储系统的用户信息,包括用户名、密码等;•联系人表:用于存储用户的联系人信息,包括姓名、电话号码、邮箱地址等;•分组表:用于将联系人进行分类管理,方便用户对联系人信息进行组织。
每张表之间通过外键进行关联,确保数据的一致性和完整性。
三、存储介质选择除了数据库存储外,系统还需要选择适当的存储介质来保存一些系统配置信息和用户的登录状态等数据。
我们选择了文件系统作为存储介质,将这些数据以文件的形式进行存储。
四、存储结构的优化为了提高系统的性能和响应速度,我们对存储结构进行了一定的优化。
主要包括以下几点:•索引设计:对关键字段建立索引,加快检索速度;•归档策略:定期对系统中的数据进行归档,减少存储空间的占用;•缓存机制:使用缓存技术对频繁访问的数据进行缓存,减少数据库访问的频率。
五、总结系统存储结构的设计对于通讯录管理系统的性能和稳定性具有重要影响。
通过合理选择数据库和存储介质,并对存储结构进行优化,可以有效提高系统的用户体验和响应速度。
c语言课程设计通讯录管理系统课程设计报告
c语言课程设计通讯录管理系统课程设计报告一、教学目标本课程旨在通过学习C语言通讯录管理系统的设计与实现,让学生掌握C语言编程的基本技能,培养其软件开发的基本思路与方法。
具体目标如下:1.知识目标:–理解C语言的基本数据类型、运算符、控制结构。
–学习C语言函数的定义与调用。
–掌握结构体、文件操作等高级C语言特性。
2.技能目标:–能够运用C语言实现简单的数据结构,如链表、数组。
–培养学生使用C语言进行程序设计的能力,能够独立完成程序编写、调试与优化。
–学会使用C语言实现文件操作,包括文件的读取与写入。
3.情感态度价值观目标:–培养学生对计算机科学的兴趣,增强其自主学习的动力。
–通过项目实践,培养学生的团队协作能力和解决问题的能力。
–引导学生理解技术对生活的影响,培养其对技术发展的责任感。
二、教学内容教学内容选取C语言编程的核心知识点,结合通讯录管理系统的实例进行讲解。
具体内容包括:1.C语言基础:数据类型、变量、运算符、控制结构。
2.函数:函数定义、调用、参数传递、返回值。
3.数据结构:数组、链表、栈和队列。
4.文件操作:文件读写、文件指针。
5.通讯录管理系统实现:结构体定义、系统功能实现、项目管理。
三、教学方法结合C语言特点和通讯录管理系统实例,采用以下教学方法:1.讲授法:系统讲解C语言基础知识和通讯录管理系统的设计理念。
2.案例分析法:通过分析典型代码案例,让学生理解程序设计逻辑。
3.实验法:学生在实验室进行编程实践,巩固理论知识。
4.讨论法:分组讨论问题,培养学生的团队协作和沟通能力。
四、教学资源1.教材:《C程序设计语言》(K&R)、《C Primer Plus》。
2.参考书:《C语言编程思想》、《C语言实践》。
3.多媒体资料:教学PPT、在线编程教程、视频讲解。
4.实验设备:计算机、网络环境、编程环境(如Code::Blocks、VisualStudio)。
五、教学评估本课程的教学评估将综合考虑学生的平时表现、作业、考试等方面,以全面、客观、公正地评价学生的学习成果。
通讯录管理系统课程设计报告
通讯录管理系统课程设计报告一、引言通讯录管理系统是一种用于存储和管理联系人信息的应用程序,它可以帮助用户方便地记录和查找各种联系人信息。
在本课程设计报告中,我们将讨论通讯录管理系统的设计和实现过程,以及系统的功能特点和操作流程。
二、需求分析通讯录管理系统需要具备以下基本功能: 1. 添加联系人信息:用户可以输入姓名、电话号码、电子邮件地址等信息来添加新的联系人。
2. 查找联系人信息:用户可以通过姓名或电话号码等关键词来查找已添加的联系人信息。
3. 修改联系人信息:用户可以对已有联系人信息进行修改和更新。
4. 删除联系人信息:用户可以选择删除不需要的联系人信息。
5. 显示所有联系人信息:系统可以按照一定的格式将所有联系人信息展示给用户。
三、系统设计1. 数据结构为了存储联系人信息,我们可以使用一个包含姓名、电话号码、电子邮件地址等字段的结构体来表示每个联系人。
可以使用链表或数组来组织所有联系人信息。
2. 模块设计通讯录管理系统可以划分为以下几个模块: - 添加联系人模块:实现添加新联系人信息的功能。
- 查找联系人模块:实现根据关键词查找联系人信息的功能。
- 修改联系人模块:实现对已有联系人信息进行修改和更新的功能。
- 删除联系人模块:实现删除不需要的联系人信息的功能。
- 显示联系人模块:实现将所有联系人信息按照一定格式展示给用户的功能。
3. 用户界面设计用户界面应该简洁明了,包括各个功能的按钮或选项,以及输入框和显示信息的区域。
用户应该能够方便地进行各种操作和查看联系人信息。
四、系统实现1. 数据存储可以使用文件来存储联系人信息,也可以使用数据库来进行数据持久化。
2. 界面实现可以使用图形界面或命令行界面来实现用户交互功能,不同的界面设计会影响用户体验。
3. 功能实现根据需求分析中的功能,实现各个模块的功能代码,确保系统可以正确地完成相关操作。
五、功能测试在系统实现完毕后,需要进行功能测试,确保系统的各个功能都能正常运行,并且符合需求。
c通讯录课程设计报告
c通讯录课程设计报告一、课程目标本通讯录课程设计旨在通过实践活动,使学生在信息技术学科的基础上,掌握以下知识目标、技能目标和情感态度价值观目标:1. 知识目标:- 了解通讯录的基本概念、功能及在实际生活中的应用。
- 掌握通讯录的录入、修改、删除、查询等基本操作。
- 了解如何对通讯录进行分类、排序和筛选,以便快速查找和整理信息。
2. 技能目标:- 学会使用电子表格软件(如Microsoft Excel)创建、编辑和管理通讯录。
- 能够运用所学知识,设计并优化个人或团队的通讯录,提高信息处理效率。
- 培养学生的团队协作能力,通过小组讨论和分享,提高问题解决和沟通表达能力。
3. 情感态度价值观目标:- 培养学生珍惜个人信息,尊重他人隐私的观念。
- 增强学生的信息素养,认识到信息技术在生活中的重要性,激发对信息技术的学习兴趣。
- 通过对通讯录的学习和实际操作,培养学生的责任心和细致严谨的工作态度。
课程性质:本课程为实践性较强的信息技术课程,结合学生年级特点和教学要求,注重培养学生的动手操作能力和团队协作能力。
学生特点:考虑到学生所在年级,他们在信息技术方面已具备一定的基础,对新鲜事物充满好奇心,善于合作学习。
教学要求:结合课程目标和学科特点,教师应注重实践操作,引导学生主动探索、积极思考,将所学知识应用于实际生活中,达到学以致用的目的。
在教学过程中,教师需关注学生的学习进度,及时调整教学策略,确保课程目标的实现。
通过本课程的学习,使学生能够熟练掌握通讯录的制作和管理,提高个人信息素养。
二、教学内容根据课程目标,本章节教学内容围绕通讯录的制作和管理展开,确保内容的科学性和系统性。
以下是详细的教学大纲及教材关联内容:1. 通讯录概述- 介绍通讯录的定义、功能及应用场景。
- 教材章节:第一章 信息技术与日常生活。
2. 通讯录的基本操作- 学习通讯录的录入、修改、删除、查询等操作。
- 教材章节:第二章 电子表格软件的基本操作。
通讯录管理系统课程设计报告总结
通讯录管理系统课程设计报告总结一、引言通讯录管理系统作为一种常见的信息管理工具,在日常生活中发挥着重要作用,能够帮助人们方便地管理和查找联系人信息。
本次课程设计旨在设计和实现一个简单的通讯录管理系统,运用所学的软件开发技术和方法,提升学生的实际项目开发能力。
二、需求分析本系统主要包括以下功能模块: 1. 用户登录和注册:用户可以通过用户名和密码登录系统,也可以注册新用户; 2. 通讯录管理:用户可以添加、删除、修改联系人信息,并可以按照姓名、电话号码等字段进行排序和搜索; 3. 导入和导出:用户可以将通讯录数据导出到文件中,也可以从文件中导入数据; 4. 权限管理:管理员可以对用户进行管理,设定不同用户的权限和角色。
三、设计与实现本系统采用Python语言进行开发,使用了Django框架进行Web应用的搭建,并结合SQLite数据库实现数据的存储和管理。
系统的前端页面采用HTML、CSS和JavaScript进行设计,实现了用户友好的界面交互。
在系统的设计过程中,我们遵循了软件工程的相关原则和方法,包括需求分析、概要设计、详细设计、编码和测试等阶段。
通过团队合作,我们按照功能模块分工合作,每位成员负责不同的部分,最终将各部分整合在一起进行测试和优化。
四、测试与优化在系统开发过程中,我们进行了严格的测试工作,包括单元测试、集成测试和系统测试等,确保系统的功能正常运行和性能优秀。
在测试过程中,我们发现了一些问题并对其进行了优化,提高了系统的稳定性和用户体验。
五、总结与展望通过本次通讯录管理系统课程设计,我们深入了解了软件开发的整个流程,提升了团队协作能力和项目管理能力。
在未来的学习和工作中,我们将继续探索软件开发领域,不断提高自己的技术水平,为社会和行业做出更多贡献。
以上是本次通讯录管理系统课程设计的报告总结,希望能够对读者有所启发和帮助。
感谢大家的支持与关注!。
java通讯录课程设计报告
课程设计报告:Java通讯录一、引言本次课程设计是关于Java通讯录的开发,旨在让我们更深入地理解Java编程语言在现实生活中的应用。
通讯录是一种常见的应用程序,它可以帮助我们管理联系人信息,方便我们与朋友和家人保持联系。
二、需求分析本次课程设计的目标是根据用户需求,设计并实现一个功能齐全的Java通讯录应用程序。
具体需求如下:用户可以添加联系人信息,包括姓名、电话号码、电子邮件地址等。
用户可以删除联系人信息。
用户可以编辑联系人信息。
用户可以按姓名、电话号码或电子邮件地址搜索联系人信息。
用户可以查看所有联系人信息。
三、设计数据库设计为了存储联系人信息,我们选择使用Java内置的ArrayList类作为数据库。
ArrayList是一个动态数组,可以根据需要自动增长。
我们将使用ArrayList的add()方法添加联系人信息,使用get()方法获取联系人信息,使用remove()方法删除联系人信息。
界面设计我们使用Java Swing库来创建用户界面。
界面包括以下组件:JLabel:显示提示信息和标题。
JTextField:用于输入和编辑联系人信息。
JButton:用于触发添加、删除、编辑和搜索等操作。
JTable:用于显示所有联系人信息。
JComboBox:用于选择搜索条件。
四、实现添加联系人信息当用户点击“添加”按钮时,程序会创建一个新的联系人对象,并将用户输入的信息设置到该对象中。
然后,程序将该对象添加到ArrayList中。
删除联系人信息当用户选择要删除的联系人并点击“删除”按钮时,程序会从ArrayList中删除该联系人对象。
编辑联系人信息当用户选择要编辑的联系人并点击“编辑”按钮时,程序会将该联系人的信息显示在文本框中,以便用户进行修改。
修改完成后,程序会将修改后的信息保存到ArrayList中。
搜索联系人信息当用户选择搜索条件并输入搜索关键字时,程序会在ArrayList 中查找符合条件的联系人对象,并将其显示在表格中。
通讯录c课程设计报告
通讯录c 课程设计报告一、课程目标本课程为六年级信息技术学科“通讯录C”课程设计,旨在通过实践操作,使学生在知识、技能及情感态度价值观方面取得以下目标:1. 知识目标:(1)掌握通讯录的基本概念及作用;(2)学会使用电子表格软件(如Microsoft Excel)创建、编辑和保存通讯录;(3)了解通讯录信息分类和排序的方法。
2. 技能目标:(1)能够独立完成通讯录的创建、编辑和保存操作;(2)能够运用电子表格软件对通讯录进行信息分类和排序;(3)学会在电子表格中插入公式,实现通讯录信息的自动计算。
3. 情感态度价值观目标:(1)培养学生对信息技术的兴趣和热情,提高信息素养;(2)培养学生团队协作精神,学会在小组合作中共同解决问题;(3)引导学生认识到信息保护的重要性,养成信息安全意识。
本课程结合六年级学生的认知特点,注重实践操作,将知识目标、技能目标和情感态度价值观目标融入教学过程中,使学生能够在轻松愉快的氛围中学习信息技术,提高综合运用能力。
同时,课程目标具体、可衡量,便于教学设计和评估。
二、教学内容本章节教学内容依据课程目标,结合教材第四章“电子表格与数据处理”内容,具体安排如下:1. 通讯录基本概念与作用:介绍通讯录的定义、功能及在日常生活和工作中重要性。
2. 电子表格软件操作:(1)认识Microsoft Excel界面,学会基本操作;(2)创建新工作簿,编辑单元格内容;(3)保存和打开工作簿。
3. 通讯录创建与编辑:(1)设计通讯录表格结构;(2)录入联系人信息;(3)调整单元格格式,美化通讯录。
4. 通讯录信息处理:(1)运用公式进行信息统计;(2)使用排序和筛选功能,快速查找联系人;(3)分类汇总联系人信息。
5. 通讯录保护与分享:(1)设置密码保护通讯录;(2)导出和分享通讯录。
教学进度安排:共计4课时,分别为:1. 第1课时:通讯录基本概念与作用、电子表格软件认识;2. 第2课时:创建与编辑通讯录;3. 第3课时:通讯录信息处理;4. 第4课时:通讯录保护与分享。
c语言课程设计通讯录管理系统课程设计报告
c语言课程设计通讯录管理系统课程设计报告一、教学目标本课程旨在通过学习C语言,使学生掌握通讯录管理系统的开发过程,培养学生的编程能力和逻辑思维能力。
具体目标如下:1.知识目标:学生能够理解C语言的基本语法和数据结构,掌握函数的定义和调用,了解面向过程的编程思想。
2.技能目标:学生能够使用C语言编写简单的程序,具备解决实际问题的能力,能够独立完成一个通讯录管理系统的开发。
3.情感态度价值观目标:学生通过课程学习,能够培养对编程的兴趣和热情,增强自我学习的动力,提高团队协作的能力。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、函数的定义和调用,以及面向过程的编程思想。
具体安排如下:1.C语言的基本语法:介绍变量、常量、运算符、表达式等基本概念。
2.数据结构:介绍整数、浮点数、字符等数据类型的使用,以及数组、指针等数据结构。
3.函数的定义和调用:介绍函数的声明、定义和调用,以及函数的参数传递和返回值。
4.面向过程的编程思想:介绍程序的执行流程、循环结构、条件判断等编程控制语句。
三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。
具体方法如下:1.讲授法:通过讲解C语言的基本语法、数据结构、函数的定义和调用等知识,使学生掌握课程的基本概念。
2.案例分析法:通过分析实际案例,让学生了解编程思想,培养学生的实际操作能力。
3.实验法:安排实验室实践环节,让学生动手编写程序,提高学生的实际编程能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。
具体资源如下:1.教材:选用权威、实用的C语言教材,为学生提供系统的学习资料。
2.参考书:推荐学生阅读一些优秀的编程书籍,丰富学生的知识储备。
3.多媒体资料:制作课件、视频等多媒体资料,提高课堂的教学效果。
4.实验设备:提供充足的计算机设备,确保学生能够进行实验和实践。
五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以全面客观地评价学生的学习成果。
C语言课程设计报告 通讯录
《C语言课程设计》目录摘要 (3)一、课程设计目的 (4)二、课程设计内容 (4)三、总体设计 (5)四、详细设计 (6)(1)数据结构设计 (6)(2)模块接口设计 (7)(3)流程图 (7)五、调试与测试 (10)(1)调试过程中的主要问题 (10)(2)测试结果的分析与讨论 (10)六. 实习总结 (12)注: 13摘要日益繁多的人际交往使得我们很难搞清楚与每个人之间的联系方式, 特别是对于做经常出差的人来说更是难, 所以通讯录能够便捷的给我们带来所需要的相关信息。
而随着计算机的普及, 人们的生活摆脱了传统式的记事本、电话簿, 越来越多的靠计算机来帮助人们记住这些事情, 极其简便。
这就需要有一个使用的通讯录管理系统, 用户可以方便的通过自己电脑的通讯录管理系统, 来随时查阅自己所需要的信息, 而不必再大费周折去翻开那繁琐的记事本。
通讯录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统, 它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能, 大大减少了查找过程的时间。
一、课程设计目的1、通过课程设计, 加深对结构化设计思想的理解, 能对系统功能进行分析, 并设计合理的模块化结构。
2、通过课程设计, 学会设计数据结构。
其中包括对结构数组、链表和数据结构等知识的运用。
3、通过课程设计, 提高程序开发功能, 能运用合理的控制流程编写清晰高效的程序。
4、通过课程设计, 训练C程序调试能力, 能将一个中小型各级组织系统联调通过。
通过课程设计, 开发一个中小型系统, 掌握系统研发全过程。
通话课程设计, 培养分析问题、解决实际问题的能力。
二、课程设计内容(1)设计一个实用的通讯录管理系统, 能以简便高效的方式对通讯录进行管理和检索, 具体要示:(2)录入:通讯录信息包括:编号, 姓名, 单位, 电话, 地址, QQ, 邮编。
以结构通讯录信息。
(3)更新: 能插入、删除通讯录信息。
通讯录管理系统课程设计报告Java
通讯录管理系统课程设计报告Java1. 简介通讯录管理系统是一种方便用户存储和管理联系人信息的工具。
本课程设计将使用Java语言开发一个简单的通讯录管理系统,实现对联系人信息的增删改查功能。
通过本项目的实践,学习者将掌握Java编程语言的基础知识和面向对象编程的技巧。
2. 功能需求通讯录管理系统应包含以下功能: - 添加联系人信息:用户可以输入联系人的姓名、电话号码、邮箱等信息添加到通讯录中。
- 显示所有联系人信息:系统能够展示所有已保存在通讯录中的联系人信息。
- 查找联系人信息:用户可以通过姓名或电话号码查找特定联系人的信息。
- 修改联系人信息:用户可以对已保存的联系人信息进行修改。
- 删除联系人信息:用户可以删除通讯录中的联系人信息。
实现以上功能需要设计相应的数据结构和算法,以及编写用户交互界面。
3. 技术实现3.1 数据结构在Java中,可以使用ArrayList或HashMap等数据结构来存储联系人信息。
ArrayList适用于有序的联系人列表,而HashMap适用于根据键值快速查找联系人信息。
3.2 用户交互界面用户交互界面可以通过Java的Swing或JavaFX等GUI工具包来实现。
设计一个简洁明了的界面,包含菜单栏、输入框、按钮等组件,以方便用户操作。
3.3 功能实现•添加联系人信息:用户输入信息后,将联系人信息添加到数据结构中。
•显示所有联系人信息:遍历数据结构,将所有联系人信息展示在界面上。
•查找联系人信息:根据用户输入的查询条件,在数据结构中查找对应的联系人信息。
•修改联系人信息:根据用户输入的修改信息,更新数据结构中相应的联系人信息。
•删除联系人信息:根据用户输入的删除条件,从数据结构中移除对应的联系人信息。
4. 总结通讯录管理系统是一个简单实用的应用程序,能够帮助用户有效管理联系人信息。
通过本课程设计,学习者将学习如何使用Java语言开发基本的应用程序,掌握面向对象编程的基本原理和技巧。
通讯录管理系统课程设计报告总结
任务名称:通讯录管理系统课程设计报告总结一、引言通讯录管理系统是一种用于管理联系人和通讯信息的应用程序。
该系统的设计旨在满足用户对个人和组织通讯信息的管理和查询需求。
本报告对通讯录管理系统的设计过程进行总结,并提出了改进建议。
二、系统需求分析在进行系统设计前,我们首先对用户需求进行了深入分析。
以下是我们对通讯录管理系统的需求分析总结:2.1 用户需求1.用户需要能够方便地添加、删除和编辑联系人信息。
2.用户需要能够快速搜索和查找特定联系人的信息。
3.用户需要能够导出通讯录信息并与其他应用程序集成。
4.用户需要能够进行批量操作,如导入联系人信息或发送批量邮件。
2.2 系统需求1.系统需要提供用户友好的用户界面,操作简单直观。
2.系统需要具备高效的搜索和查询功能,以满足用户的快速查找需求。
3.系统需要能够存储大量联系人信息,并确保数据安全性和完整性。
4.系统需要提供数据导入导出功能和与其他应用程序的集成能力。
三、系统设计在系统设计阶段,我们采用了面向对象的方法进行系统建模和设计。
以下是系统设计的要点:3.1 系统架构通讯录管理系统采用了三层架构模式:表示层、业务逻辑层和数据访问层。
这种架构模式将系统的功能划分为不同的层次,方便系统的维护和扩展。
3.2 数据库设计我们使用了关系型数据库来存储和管理通讯录信息。
数据库设计包括联系人表、联系人组表等。
通过合理的数据表设计,实现了联系人和联系人组之间的关联和查询。
3.3 用户界面设计为了提供用户友好的界面,我们通过使用图形用户界面(GUI)的方式构建了系统界面。
界面设计简洁明了,用户可以方便地进行联系人管理和查询操作。
3.4 功能设计根据用户需求,系统实现了联系人的添加、删除、编辑等功能。
同时,系统还提供了高效的搜索和查询功能,用户可以通过姓名、电话号码等信息快速查找联系人。
四、系统实现与测试在系统实现阶段,我们按照设计要求逐步开发各个模块,并进行了系统测试。
学生通讯录管理系统课程设计报告
学生通讯录管理系统课程设计报告一、课程设计背景学生通讯录管理系统是一个旨在帮助学生和教师更好地管理个人信息和通讯录的软件系统。
随着信息技术的不断发展,现代教育领域对教学、管理和学习等方面的要求越来越高,传统的纸质通讯录管理方式已经无法满足教育机构的需求。
因此,开发一个便捷、高效的学生通讯录管理系统成为当今教育信息化的重要课题。
二、需求分析学生通讯录管理系统主要包括以下功能模块:1.学生信息管理:用于录入、修改和删除学生个人信息,包括姓名、学号、性别、联系方式等;2.通讯录管理:实现通讯录的分类、查找、添加和删除功能,方便学生和教师进行联系;3.用户权限管理:设置不同权限等级的用户,如学生、教师和管理员,确保信息安全性;4.数据备份与恢复:对系统中的重要数据进行定期备份,保障数据的安全性;5.界面友好性:系统界面简洁明了,操作便捷,用户体验良好。
三、系统设计1. 系统架构学生通讯录管理系统采用客户端-服务器架构,客户端提供给学生和教师使用,服务器端用于存储核心数据和处理业务逻辑。
2. 数据库设计系统采用关系型数据库,主要包括以下表:•学生表(Student):包含学生的基本信息;•教师表(Teacher):包含教师的基本信息;•通讯录表(Contact):记录学生或教师之间的联系方式;•用户表(User):存储系统用户的账号信息和权限。
3. 功能实现(1)学生信息管理学生信息管理模块提供学生信息的增删改查功能,管理员可以对学生信息进行修改和删除,学生可以查看、修改自己的个人信息。
(2)通讯录管理通讯录管理模块支持对通讯录的分类和搜索功能,学生和教师可以添加、删除通讯录条目,并对通讯录进行管理。
(3)用户权限管理系统设定不同权限等级的用户,管理员有最高权限,可以管理用户账号和角色,确保系统的安全性。
四、系统实现系统采用Java语言进行开发,前端界面使用JavaFX技术,后端采用Spring框架实现业务逻辑,数据库连接采用JDBC等技术。
通讯录系统课程设计实验报告
目录1系统可行性分析 (2)1.1软硬件环境 (2)1.11软件环境 (2)1.12 硬件环境 (2)1.2系统可行性分析分类 (2)1.21技术可行性 (2)1.22 经济可行性 (2)1.23管理可行性 (2)2 需求规格说明书 (2)2.1模块要求 (3)2.2 设计要求 (3)2.3 设计要求功能分析 (3)3 设计规格说明书 (3)3.1 通讯录总的流程图 (4)3.2 创建通讯录的流程图 (4)3.3 添加通讯录记录的流程图 (5)3.4 查找联系人记录的流程图 (5)4 测试策略与方案 (6)4.1测试类型 (6)4.2 测试项目 (7)4.3 测试环境与配置 (7)4.4 输入数据设置 (7)4.5 输入功能设置 (8)5 课程设计总结 (10)参考文献 (10)附件:程序源代码 (11)1系统可行性分析1.1软硬件环境分析1.11软件环境用户端 windows2000 windows2003 windowsxp win7服务器端 windowsxp及以上的操作系统编程语言:c++1.12硬件环境有高性能的电子计算机,大容量的存储装置,个人电脑及连接起来的网线等,组成信息资源共享的计算机网络等1.2系统可行性分析分类1.21技术可行性可以用C语言和相应的软硬件环境实现1.22经济可行性在经济上,用此系统加强了通讯系统信息管理效率,可以省人力资源的开支1.23管理可行性分析在工作上,获取信息量相对较大,开发了此系统,提高了获取信息的效率,方便信息储存和修改及以后随时查找信息系统分析结论该系统是一个比较人性化的管理系统2需求规格说明书2.1模块要求:第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。
第二个模块——Menu()的功能是:显示英文提示选单。
第三个模块——Quit()的功能是:退出选单。
第四个模块——Create()的功能是:创建新的通讯录。
通讯录管理系统课程设计报告
设计课题题目一、课程设计目的与要求1.课程设计目的(1)综合运用之前所学知识(选择控制,循环控制,数组,函数,指针,结构体和文件等)来完成一个简单的信息管理程序的设计。
(2)充分体现和体会函数在程序设计中的必要性和实用性,并反映主函数main()在程序设计中的实现思路和方法。
2. 课程设计要求制作一个通讯录系统。
(1)该程序具有查找、添加、修改、删除功能。
(2)通讯录包括:姓名、电话、街道、城市、省、邮编等。
二、总体设计根据系统的要求,系统总体设计如图1所示。
三、详细设计1、数据结构设计#include<stdio.h> /*标准输入输出函数库*/#include<stdlib.h> /*标准函数库*/#include<string.h> /*字符串函数库*/#define FILENAME "phone.dat"struct date //定义一个结构体类型数组{ char name[10]; /*姓名*/char phone[12]; /*电话*/char email[20]; /*邮箱*/char QQ[20]; /*QQ*/} per[10];int menu() //主菜单选择函数2.函数说明(1) 主函数main()允许用户通过菜单进行功能选择,使用相应的功能代码来调用对应的函数功能。
(2)四、程序清单1、头文件#include<stdio.h> /*标准输入输出函数库*/#include<stdlib.h> /*标准函数库*/#include<string.h> /*字符串函数库*/#define FILENAME "phone.dat"2、主函数void main() //主函数{int n=0,i;while(1){ switch (menu()){ case 1: { printf("\n\t 通讯信息录入\n"); //信息录入n=Input(per, n);}break;case 2:printf("\n\t\t\t 通讯录记录表\n"); //显示记录Display(per,n);break;case 3:printf("\n\t保存功能\n");WritetoText(per,n); //保存数据printf("\t");system("pause"); //操作完成后进行暂停break;case 4:printf("\n\t从通讯录中删除记录\n");n=Delete_a_record(per,n); //删除记录printf("\t");system("pause");break;case 5:printf("\n\t修改通讯录中的记录\n");Change(per,n); //修改数据printf("\t");system("pause");break;case 6:printf("\n\t添加记录到通讯录\n"); //添加记录n=Input(per,n);break;case 7:printf("\n\t在通讯录中查找记录\n");Query_a_record(per,n); //查找记录printf("\t");system("pause"); //从程序里调用”pause”命令break;case 0:printf("\n\t\t谢谢使用,再见!\n"); //结束程序printf("\n\t\t");system("pause");exit(0);}五、总程序和分工执行结果#include<stdio.h> /*标准输入输出函数库*/#include<stdlib.h> /*标准函数库*/#include<string.h> /*字符串函数库*/#define FILENAME "phone.dat"struct date //定义一个结构体类型数组{ char name[10]; /*姓名*/char phone[12];char email[20]; /*邮箱*/char QQ[20];}per[10];int menu() //主菜单选择函数{ int c; //定义一个整型变量do{system("cls"); //清屏printf("\t*******通讯录*******\n");printf("\t--------------------\n");printf("\t 1、通讯信息录入\n");printf("\t 2、通讯信息显示\n");printf("\t 3、通讯信息保存\n");printf("\t 4、通讯信息删除\n");printf("\t 5、通讯信息修改\n");printf("\t 6、通讯信息增加\n");printf("\t 7、通讯信息查询\n");printf("\t 0. 退出\n");printf("\t--------------------\n");printf("\t请您选择(0-7):");scanf("%d",&c);}while(c>7&&c<0);return(c);}int Input(struct date per[10],int n){ int i=0;char sign,x[10];while(sign!='n'&&sign!='N'){ printf("\t姓名:");scanf("%s",per[n+i].name);printf("\t电话号码:");scanf("%s",per[n+i].phone);printf("\t电子邮箱:");scanf("%s",per[n+i].email);printf("\tQQ:");scanf("%s",per[n+i].QQ);gets(x);printf("\n\t是否继续添加?(Y/N)");fflush(stdin); //清空缓存scanf("%c",&sign);i++;}return(n+i);}void writeToFile(struct date per[10],int n){ FILE *fp=NULL;int i=0;fp=fopen("phone.dat","wb");if(fp==NULL){ printf("打开文件出错!\n");exit(0);}for(i=0;i<10;i++)fwrite(&per[i],sizeof(per),1,fp); //把字节为1的信息写入文件fclose(fp);}void Display(struct date per[10],int n){ int i;printf("----------------------------------------------------------------------\n"); //格式/printf(" 姓名电话号码QQ 电子邮箱\n");printf("----------------------------------------------------------------------\n");for(i=1;i<n+1;i++){printf("%-15s%-14s%-14s%-14s\n",per[i-1].name,per[i-1].phone,per[i-1].QQ,per[i-1].email);if(i>1&&i%10==0){ printf("\t-----------------------------------\n");printf("\t");system("pause");printf("\t-----------------------------------\n");}}printf("----------------------------------------------------------------------\n");system("pause");}int Delete_a_record(struct date per[10],int n){ char s[20];int i=0,j;printf("\t请输入想删除记录中的名字:");scanf("%s",s);while(strcmp(per[i].name,s)!=0&&i<n) i++;if(i==n){printf("\t通讯录中没有此人!\n");return(n);}for(j=i;j<n-1;j++){ strcpy(per[j].phone,per[j+1].phone);strcpy(per[j].name,per[j+1].name);strcpy(per[j].QQ,per[j+1].QQ);strcpy(per[j].email,per[j+1].email);}printf("\t\t\t已经成功删除!\n");return(n-1);}void Query_a_record(struct date per[10],int n){ int m;printf("\t\n请选择查询方式:\n");printf("\t┌──────┐\n");printf("\t│1------姓名│\n");printf("\t│2------电话│\n");printf("\t│3------返回│\n");printf("\t└──────┘\n");printf("请选择:");scanf("%d",&m);while(m!=1&&m!=2&&m!=3&&m!=4){printf("输入错误,请重新选择:");scanf("%d",&m);}if(m==1){ char s[20];int i=0;printf("\t请输入想查询的姓名:");scanf("\t%s",s);while(strcmp(per[i].name,s)!=0&&i<n) i++;if(i==n){printf("\t通讯录中没有此人!\n");return;}printf("\t此人QQ: %s\n",per[i].QQ);printf("\t电话号码: %s\n",per[i].phone);printf("\t电子邮箱: %s\n",per[i].email);} ;if(m==2){ char s[20];int i=0;printf("\t请输入想查询的电话:");scanf("\t%s",s);while(strcmp(per[i].phone,s)!=0&&i<n) i++;if(i==n){printf("\t通讯录中没有此人!\n");return;}printf("\t此人姓名: %s\n",per[i].name);printf("\t此人QQ: %s\n",per[i].QQ);printf("\t电子邮箱: %s\n",per[i].email);} ;}void Change(struct date per[10],int n){ char s[20];int i=0;printf("\t请输入想修改的记录中的名字:");scanf("%s",s);while(strcmp(per[i].name,s)!=0&&i<n) i++;if(i==n){ printf("\t通讯录中没有此人!\n");return;}printf("姓名:");scanf("%s",per[i].name);printf("电话号码:");scanf("%s",per[i].phone);printf("QQ:");scanf("%s",per[i].QQ);printf("电子邮箱:");scanf("%s",per[i].email);printf("\n修改成功!");}void WritetoText(struct date per[10],int n){ int i=0;FILE *fp; //定义文件指针char filename[20]; //定义文件名printf("\t保存到文件\n"); //输入文件名if((fp=fopen("phone.dat","w"))==NULL){ printf("\t无法打开文件\n");system("pause");return;}fprintf(fp,"***************************************通讯录********************************\n");fprintf(fp," 姓名电话号码QQ 电子邮箱\n");fprintf(fp,"-----------------------------------------------------------------------------\n");while(i<n){ fprintf(fp,"%-10s\t%-3s\t%-20s\t%-20s\n",per[i].name,per[i].phone,per[i].QQ,per[i].email);i++;}fprintf(fp,"-------------------------------------------------------------------------\n");fprintf(fp,"********************************共有%d条记录***************************\n",n);fclose(fp); //关闭文件printf("保存成功!\n");}void main() //主函数{ int n=0,i;while(1){ switch (menu()){ case 1: { printf("\n\t 通讯信息录入\n"); //信息录入n=Input(per, n);}break;case 2:printf("\n\t\t\t 通讯录记录表\n"); //显示记录Display(per,n);break;case 3:printf("\n\t保存功能\n");WritetoText(per,n); //保存数据printf("\t");system("pause"); //操作完成后进行暂停break;case 4:printf("\n\t从通讯录中删除记录\n");n=Delete_a_record(per,n); //删除记录printf("\t");system("pause");break;case 5:printf("\n\t修改通讯录中的记录\n");Change(per,n); //修改数据printf("\t");system("pause");break;case 6:printf("\n\t添加记录到通讯录\n"); //添加记录n=Input(per,n);break;case 7:printf("\n\t在通讯录中查找记录\n");Query_a_record(per,n); //查找记录printf("\t");system("pause");break;case 0:printf("\n\t\t谢谢使用,再见!\n"); //结束程序printf("\n\t\t");system("pause");exit(0);}}}图1 通讯录主菜单结果图2 信息录入图3 通讯信息显示图4 通讯信息保存五、调试与测试所谓程序调试是对程序的查错和排错。
通讯录管理系统课程设计报告需求分析
通讯录管理系统课程设计报告需求分析一、背景介绍在当今社会,随着通讯技术的不断发展和普及,通讯录管理系统成为人们日常生活和工作中不可或缺的工具。
为了提高通讯录管理系统的便捷性和效率,本课程设计旨在分析通讯录管理系统的需求,进而设计一个功能完善、操作简便的系统,满足用户的实际需求。
二、需求分析1. 功能需求通讯录管理系统应具备以下基本功能: - 添加联系人:用户可以录入新的联系人信息,包括姓名、电话号码、邮箱等。
- 编辑联系人:用户可以修改已有联系人的信息。
- 删除联系人:用户可以删除不需要的联系人信息。
- 搜索联系人:用户可以根据关键词快速搜索联系人信息。
- 分组管理:用户可以对联系人进行分类管理,方便查找和管理。
2. 性能需求通讯录管理系统的性能需求包括: - 快速响应:系统应具备快速响应用户操作的能力,保证用户体验流畅。
- 数据安全:系统需要保障用户数据的安全性,防止数据泄露和丢失。
- 稳定性:系统需要保持稳定运行,避免出现频繁的崩溃和错误。
3. 可靠性需求通讯录管理系统的可靠性需求包括: - 数据备份:系统应具备数据备份和恢复功能,确保数据不会因意外情况丢失。
- 异常处理:系统需要具备异常处理机制,能够处理用户操作中出现的异常情况。
- 用户权限管理:系统需要对用户进行权限管理,保证只有授权用户可以访问和操作系统。
4. 易用性需求通讯录管理系统的易用性需求包括: - 界面友好:系统界面设计应简洁明了,操作逻辑清晰,便于用户使用。
- 操作简便:用户操作应简单明了,不需要复杂的步骤就能完成常用功能。
- 提示反馈:系统应提供操作提示和反馈,帮助用户正确使用系统。
三、总结基于以上需求分析,通讯录管理系统应具备功能完善、性能优良、可靠稳定、易用便捷的特点,以满足用户的实际需求。
通过本课程设计,我们将致力于设计一个满足以上需求的通讯录管理系统,为用户提供便捷高效的通讯录管理体验。
以上是对通讯录管理系统课程设计报告需求分析的整体内容,系统将围绕这些需求进行设计和实现。
c通讯录课程设计报告
c通讯录课程设计报告一、教学目标本课程的目标是让学生掌握通讯录的基本概念、设计和实现方法。
通过本课程的学习,学生应能理解通讯录的结构和功能,掌握通讯录的编写和使用方法,培养学生的实际动手能力和解决问题的能力。
具体目标如下:1.知识目标:学生能够理解通讯录的基本概念,掌握通讯录的设计和实现方法。
2.技能目标:学生能够编写和使用通讯录,解决实际问题。
3.情感态度价值观目标:学生通过学习通讯录,培养对信息技术的兴趣和热情,增强信息处理的实际能力。
二、教学内容本课程的教学内容主要包括通讯录的基本概念、设计和实现方法。
具体安排如下:1.第一章:通讯录的基本概念,介绍通讯录的定义、功能和分类。
2.第二章:通讯录的设计,介绍通讯录的设计原则、方法和步骤。
3.第三章:通讯录的实现,介绍通讯录的编程语言、技术和工具。
4.第四章:通讯录的应用,介绍通讯录在日常生活和工作中的应用场景。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。
具体方法如下:1.讲授法:通过讲解通讯录的基本概念、设计和实现方法,使学生掌握相关知识。
2.讨论法:学生就通讯录的应用场景和实际问题进行讨论,培养学生的思考和表达能力。
3.案例分析法:分析实际案例,使学生了解通讯录在日常生活和工作中的应用,提高学生的实际操作能力。
4.实验法:安排实验课,让学生动手编写和使用通讯录,培养学生的实际动手能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:选用权威、实用的通讯录教材,为学生提供系统、全面的知识体系。
2.参考书:推荐学生阅读相关参考书,拓展知识面,提高学生的自学能力。
3.多媒体资料:制作课件、视频等多媒体资料,直观展示通讯录的设计和实现过程。
4.实验设备:准备计算机、编程环境等实验设备,确保学生能够顺利进行实验操作。
五、教学评估本课程的评估方式包括平时表现、作业和考试等,旨在全面、客观、公正地反映学生的学习成果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大学课程设计说明书课程名称管理信息系统题目通讯录管理系统学院班级学生姓名指导教师日期目录1.需求分析 (3)2.系统分析 (4)2.1.系统的可行性研究 (4)2.2.功能需求分析 (4)3.系统设计 (5)3.1.系统模块设计 (5)3.2.数据库设计 (5)4.系统实施 (7)4.1.开发环境 (7)4.2.建立数据库 (7)4.2.1.数据库创建代码 (7)4.2.2.数据库表创建代码 (8)4.3.程序设计 (10)4.3.1.主程序的设计 (10)4.3.2.登录界面的设计 (12)4.4.系统测试 (19)5.课程设计总结 (25)6.参考文献 (26)1.需求分析随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。
通讯录管理系统是一个基于SQL数据库储存和JAVA界面模式的个人通讯录管理系统。
它是将自己的联系人的具体信息集中管理,成为一个方便人们使用的小软件。
在开发过程中主要运用Java, SQL Server技术,由于开发工具和数据库之间的良好使用,可以为开发带来方便,使之成为一个可施行的系统。
从而达到开发的目的-----实现对通讯录信息的管理。
通过采用相关技术,以及老师的辅导和同学们的帮助,将系统设计的功能全部实现。
功能包括:用户的登录, 添加联系人信息,修改联系人信息,删除联系人信息,查询联系人信息,可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。
2.系统分析2.1. 系统的可行性研究目的:可行性研究的目的是用最小的代价在尽可能少的时间内确定问题是否能够解决。
而该系统正式用比较简单的VFP语言来编写的小型的、实用的通讯录信息管理系统,既能很好地完成对用户信息的管理,又比较经济实惠。
本系统采用的是VFP语言,在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上也有很丰富的相关资料,通过参考一些功能模块程序的设计,实现该系统是完全可以的。
本系统的设计是在windows XP中文版环境下,使用Visual开发的。
它是可以运行于windows XP相关平台的数据库开发系统。
Visual不仅可以简化数据库管理,而且应用程序的开发流程更为合理,它使组织数据,定义数据库规则和建立应用程序的工作变得简单易行,利用可视化的设计工具和向导,用户可以快速的创建表单、查询等。
2.2. 功能需求分析本系统主要实现对通讯录信息进行管理,需要实现以下几个方面的管理功能:(1)通讯录管理信息:信息的添加、删除、浏览、修改和查询等操作。
(2)系统维护:包括用户登录,用户修改密码,数据的修改、浏览、添加、删除以及按姓名、联系方式、地址进行查询。
3.系统设计3.1. 系统模块设计图3-1系统模块结构图添加:系统提示用户添加新人员信息,输入到文件中,人员的信息包含姓名(name)、电话号码(phonenum)、类型(type)、电子邮件(email)。
显示:该功能显示所有以保存的人员的姓名、电话号码、类型和电子邮件。
查询:由用户输入要查找的人员姓名、电话号码或者类型,系统将调用查找函数,使用相关文件命令输出所查找人员的相关信息。
删除:由用户输入需要删除人员的姓名,系统调用删除函数将此人所有相关信息删除。
修改:由用户输入需要修改的人员的姓名,系统调用修改函数,用户修改需修改的信息。
保存退出:完成任务,退出系统。
3.2. 数据库设计数据库中包括系统用户表、通讯表各表结构设计如下。
1、系统用户表2、用户表代表了一个用户的个人信息,是不允许随意修改的,所以本系统采用了一定的保密措施,主要是用户的管理,所有的用户信息保存在这个表中,该表被命名为用户表.DBF,其结构表,如表所示。
表系统用户表结构主要是通讯录信息的管理,包括联系方式、地址、电话等。
该表被命名为通讯录.DBF,主要是在建表时利用表设计器对表四要素:字段、类型、长度、小数位相应的设置。
其结构表如表所示。
表通讯录表结构4.系统实施4.1. 开发环境⑴开发条件:硬件:没人一台Intel Pentium4以上的计算机软件:Word、Visio、、Windows XP、SQL Server2000;⑵开发时间:开发的整个过程在三周内完成;⑶经费问题:经费少,适合学生开发的简单系统。
4.2. 建立数据库4.2.1.数据库创建代码create database 通讯录管理系统on primary(name ='通讯录管理系统',Filename='d:\数据库\通讯管理系统.mdf',size=10mb,maxsize=100mb,filegrowth=20%)log on(name='通讯录管理系统',filename='d:\数据库\通讯录管理系统.ldf',size=20mb,maxsize=100mb,filegrowth=20%)4.2.2.数据库表创建代码4.2.2.1. 用户表create table 用户(用户名 char(20) primary key,密码 char(40) not null,)4.2.2.2. 联系人表create table 联系人(编号 char(10) primary key,姓名 char(10),性别 char(4) not null,电话号码 char(10) not null,E_mail char(50),地址 char(30),分组类型 char(10),)4.2.2.3. 分组表create table 同学分组(同学编号 char(10)primary key FOREIGN KEY(同学编号)REFERENCES 联系人(编号),姓名 char(10),)gocreate table 朋友分组(朋友编号 char(10)primary key FOREIGN KEY(朋友编号)REFERENCES 联系人(编号),姓名 char(10),)gocreate table 同事分组(同事编号 char(10)primary key FOREIGN KEY(同事编号)REFERENCES 联系人(编号),姓名 char(10),)4.2.2.4. 视图创建代码gocreate view 朋友asselect 朋友分组.朋友编号,朋友分组.姓名,电话号码,性别,E_mail,分组类型from 朋友分组,联系人where 朋友分组.朋友编号=联系人.编号gocreate view 同学asselect 同学分组.同学编号,同学分组.姓名,电话号码,性别,E_mail,分组类型from 联系人,同学分组where 同学分组.同学编号=联系人.编号gocreate view 所有联系人asselect 联系人.姓名,联系人.电话号码,联系人.性别,联系人.E_mail,分组类型from 联系人go4.2.2.5. 存储过程代码创建create procedure _朋友asselect 朋友分组.朋友编号,朋友分组.姓名,电话号码,性别,E_mail,分组类型from 联系人,朋友分组where 朋友分组.朋友编号=联系人.编号gocreate procedure _同学asselect 同学分组.同学编号,同学分组.姓名,电话号码,性别,E_mail,分组类型from 联系人,同学分组where 同学分组.同学编号=联系人.编号gocreate procedure _所有联系人asselect *from 联系人4.3. 程序设计4.3.1.主程序的设计程序在运行期间要使用部分的变量来传递数据,所有这些变量都要在程序中定义。
在Visual 中新建一个项目文件,以“个人通讯录管理系统”的名称保存。
打开该项目的管理器,在管理器的“代码”选项卡中添加一个名为“MAIN”的代码文件,并在“MAIN”代码文件窗口中添加代码如下:SET TALK OFF &&关闭对话SET ESCAPE OFF &&关闭ESCAPE键SET EXACT ON &&打开完全匹配SET EXCLUSIVE ON &&打开独占SET CONSOLE ON &&将输出结果到发送到主窗口或当前窗口SET DATE TO LONG &&设置长日期SET SCORE OFF &&关闭分值栏SET SAFETY OFF &&关闭安全提示SET STATUS BAR OFF &&关闭系统提示栏SET CENTURY ON &&打开世纪开关SET DELETED ON &&屏闭删除项SET SYSMENU OFF &&关闭系统菜单SET NOTIFY OFF &&关闭提示&&设置系统窗口属性= .F. &&取消最大化按钮= 800 &&设置最大宽度= 600 &&设置最大高度= "个人通讯录管理系统" &&设置窗口标题= '' &&设置窗口背景图片= .T. &&指定表单初次显示时,自动位于主窗口中央public UserName, UserType &&定义全局变量Do &&打开菜单Do FormREAD EVENTSProcedure On QuitCLEAR EVENTSCLOSE ALLQUITEndprocedure4.3.2.登录界面的设计4.3.2.1. 用户登录模块登录界面的作用是为了验证用户的合法性,只有合法的用户才能进入系统,并且要求使用者提供密码。
设计完成的登录界面如图所示。
图登录设计界面在该界面中显示当前的操作时间,该时间为本系统从操作系统中取出的时间,而且不允许操作者进行修改,所以在表单执行时会自动显示该时间,并设置成只读状态。
此外,该登录界面还设置了一些美化操作。
采用动态效果,让“欢迎使用通讯录系统”动起来。
密码错误将不许用户进入系统。
上述功能的代码设计如下:对象cmdOK 过程:ClickIF ALLTRIM == ''MessageBox("请输入用户名")RETURNENDIFIF ALLTRIM == ''MessageBox("请输入密码")RETURNENDIFSELECT 用户表&&查找指定用户名为的记录Locate For Allt(用户名)=Allt Found() == .T. &&如果找到If Allt(密码) == Allt &&比较密码,成功则进入MessageBox("欢迎光临", 64, "提示信息")UserName = 用户名UserType = 用户类型release thisformElse &&比较密码不成功MessageBox("密码不正确", 16, "错误提示")EndifElse &&没有找到指定用户MessageBox("用户名不存在", 16, "错误提示")Endif对象:Timer1 过程:Timerlocal i,j,ki=int(rand()*255)j=int(rand()*255)k=int(rand()*255)4.3.2.2. if 用户注册模块设计完成的注册界面如图所示。