文档库 最新最全的文档下载
当前位置:文档库 › 用XML做通讯录实验报告

用XML做通讯录实验报告

用XML做通讯录实验报告
用XML做通讯录实验报告

学院:

专业:

学号:

姓名:

计算机与信息技术学院综合性、设计性实验报告

专业:年级/班级:学年第学期

课程名称XML基础指导教师

本组成员

学号姓名

实验地点实验时间

项目名称个人通讯薄一的设计与实现实验类型综合性

一、实验目的

1、掌握XML文档的基本语法,能够得到格式良好的XML文档;

2、能够了解并掌握XML DTD的定义方法及其用途;

3、能够熟练使用XMLSPY来创建DTD文件及对应的有效的XML文件,并进行验证;

二、实验仪器或设备

学院提供公共机房,1台学生微型计算机。

三、总体设计(设计原理、设计方案及流程等)

设计原理:按照XML、DTD的语法规则来编写、保存文件XML、DTD文件。

设计方案及流程:

利用XML文档作为存储载体来存储个人通讯薄,按照以下要求设计并实现该通讯薄:

1、内含同学(classmate)、朋友(friend)、家人(home)等人员。每条通讯录至少包

含以下信息:

a、姓名(name):必须有一个,其中包含一个枚举类型的性别(sex)属性;

b、性别(sex):必须有一个;

c、联系方式(tel):必须有一个;

d、QQ号:一个或多个;

e、地址(address):一个或多个;

f、备注(other):一个或多个;

g、根据需要可添加其它字段。

2、为该XML文档,编写DTD文档。

四、实验步骤(包括主要步骤、代码分析等)

1、按照以上设计编写一个规范的XML文档

这句话放为XML文件的声明,作为文件的第一行,在其前面不能有空白、其他处理指令或注释。XML声明以标识结束。在该XML声明中,属性version 的值为1.0,指出了该XML文件使用的XML版本,目前该属性的值只可以取1.0。属性encoding规定XML文件采用哪种字符集进行编码,在这encoding的值为“UTF-8”,那么标记的名字以及标记包含的文本内容中就可以使用汉字、日文、英文等。最后,文件在保存的时候必须选择UTF-8编码来保存,否则会出错。

如果在XML声明中没有指定encoding的值,那么该属性的默认值为UTF-8。

在XML文档中,有且仅有一个根标记,其他标记都必须封装在根标记中如图所示:

在该XML文件中,根标记的名字为“txl”,在根标记中封装了一个或多个名字为“title”、“classmate”、“friend”、“home”的标记。在名为“classmate”、“friend”、“home”

的标记下,又都包含了名为“name”、“sex”、“tel”、“QQ”、“address”、“other”的子标记,他们分别包含了姓名、性别、联系方式、QQ号、地址、备注这些信息。至此,该XML文件可以称为一个规范的XML文件。

使用XMLSpy,使用按钮检验XML文件的规范性,所得结果为:

2、为该XML文档编写DTD文档,使其成为一个有效的XML文档

一个有效的XML文件如果和某个DTD文件相关联,并遵守该DTD文件规定的约束条件,就称为有效的XML。

DTD通过其中的元素来限制XML文件中的标记。下列元素:约束XML文件的根标记“txl”可以有一个名为“title”的子标记,一个或多个名为“classmate”、“friend”、“home”的子标记,不可以有任何其他名称的子标记。

下列元素:

约束了XML文件中名称为“classmate”、“friend”、“home”的标记恰好顺序地包含有名称分别为“name”、“sex”、“tel”、“QQ”、“address”和“other”子标记,而且约束名称为“classmate”、“friend”、“home”的标记包含的内容不可以有可显示的字符(允许含有空格、回行等空白字符)。

下列元素:

分别约束了XML文件中名称为“name”、“sex”、“tel”、“QQ”、“address”和“other”的标记所包含的内容只可以是文本数据,不可以包含有子标记。

在该XML文档中,name的sex属性是枚举类型,那么该属性只可以是枚举给出的值,即属性可以取的值是用符号“|”分隔的几个字符串中的任何一个。下列元素:

约束了约束了sex属性值可以是男/女。

在保存DTD文件时,要选择“UTF-8”编码方式保存(在保存DTD文件时所选择的编码必须和它要约束的XML文件保持一致)。

在XML文件中,可以使用“文档类型声明”使当前XML文件与一个DTD文件相关联。如: 其中txl为XML文件的根标记,“TXL.dtd”是与该XML文件相关连的DTD的URI,即使用SYSTEM文档类型声明的格式为:。

使用XMLSpy,用按钮检验XML文件的有效性,所得结果为:

,所以,现在得到的XML文件是一个有效的XML文件。

五、结果分析与总结

一个规范的XML文件,应当满足以下语法规则:XML文件用“XML声明”开始;XML 文件有且仅有一个根标记;XML的非根标记必须封装在根标记中;非空标记必须由“开始标签”和“结束标签”构成;空标记没有“开始标签”和“结束标签”;XML文件中的全体标记必须形成树形结构,即标记不允许出现交叉。

在编写的XML文件中,如果选择的编码方式为“UTF-8”,XML文件必须选择UTF-8编码来保存;如果选择的编码方式为“gb2312”或“ISO-8859-1”,XML文件必须选择ANSI编码保存。如果不按以上方式保存,会出错。

如果在要XML文档中使用特殊字符,可以使用字符引用或CDATA段。如以下代码(CDATA段)

在浏览器中显示效果如下:

以下代码(实体引用):

显示如下:

在DTD文件中,元素的定义以“”结束,其中,“)时,“

改为,打开XML文件时,会出现以下结果:

除此之外,DTD文件中元素的作用与其在DTD文件中的书写位置无关,DTD文件中不允许使用多个元素约束同一个标记。。。。。。

需要特别注意的是:DTD文件是由元素构成的文本文件,需要使用文本编辑器编写、保存,在保存DTD文件时,选择的编码必须和它要约束的XML文件保持一致。如不一样,检验有效性时会报错,例如本应该以“UTF-8”编码保存的,用“ANSI”编码保存,在

有汉字的地方会报错:

要想完成一个规范的、有效的XML文件,必须要按照XML、DTD的语法规则来编写、保存文件,这样才能避免出错。

教师签名:

年月日

通讯录管理系统实验报告

通讯录管理系统实验报告 信息科学与技术学院《程序设计实习》实训报告书 目: 计算机科学与技术题 专业: 计算机科学与技术班级: 姓名: 学号: 同组人员: 指导老师: 设计时间: 目录 1.实训计 划 ..................................................................... ................................... 1 2.问题描 述 ..................................................................... ................................... 1 3.问题分 析 ..................................................................... ................................... 2 4.算法设 计 ..................................................................... ................................... 4 5.程序模块设 计 ..................................................................... ............................ 5 6.技术难点与分 析 ..................................................................... ........................ 8 7.系统测 试 ..................................................................... ................................... 9 8.心得体 会 .....................................................................

XML实验报告

计算机系 实验报告 实验课程:XML 实验班级:网工(2)班学生姓名: 学生学号: 实验成绩:

一、实验目的 综合验证以下课程主要知识点: 1.XML语法 熟悉XML语法规范、能够编写形式良好的XML文档; 2.DTD和xml Schema文档约束 熟练使用DTD和XML Schema定义基本的XML元素、属性、限定等方面的模式约束。 3.SAX解析、DOM解析以及JAXP 了解SAX和DOM解析原理,能够使用JAXP接口完成对XML文档的解析和转换。 4.XSLT和XPath 能够使用XSLT和XPath完成从XML文档到HTML格式的转换。 二、实验内容 1.编写XML文档约束 根据下图中显示的信息,编写一个DTD文档,其内容要求能够包含图中所有的信息点。 2.编写一个XML文档,使其在DTD约束下是有效的 假设上一步编写的DTD文档文件名为:books.dtd,编译一个XML文档使其在books.dtd 文件的约束下成为一个有效的XML文档。然后,使用xmllint程序对你编写的XML文档进行有效性验证,具体如果使用,请参看“《XML》课程教案”中的相关内容。 3.使用JAXP接口,对上一步完成的XML文档进行解析 假设上一步编写的XML文档名为books.xml。

1)使用SAX方式解析 从XML文档books.xml中获得“书名”、“书号”、“作者”、“出版社”、“出版日期”这5个记录项的信息,并将其格式化输出到一个文件books.txt中。 books.txt中的信息格式如下所示: 书名书号作者出版社出版日期 -------------------------------------------------------------------- name 1234 Tom 清华2011 2)使用DOM方式解析 从XML文档books.xml中获取“书名”、“书号”、“作者”、“出版社”、“出版日期”,并将它们封装到一个javabean类中,然后利用该类中的数据,通过DOM构造一棵DOM文档树,并将其序列化到一个XML文件中simplebooks.xml。 4.编写一个XSLT转换文档,转换到HTML 对于上一步通过DOM序列化出来的simplebooks.xml,编写一个XSLT文档books.xslt,将simplebooks.xml转换成为一个HTML格式表格形式呈现。该HTML通过浏览器呈现出来 使用JAXP的XSL转换工厂,获得simpleboosk.xml通过books.xslt转换出来的HTML文件simplebooks.html。 三、实验步骤 1.编写XML文档约束

简单的通讯录实验报告

( 二〇一二 年 十 月 课程设计说明书 本科毕业设计 题 目:简单通讯录程序 学生姓名:李天罡 学 院:工学院 专 业:数字媒体技术 班 级:2011级 指导教师:王金祥

目录 引言 (3) 第一章需求与分析...................................... I 1.1开发环境 ....................................................................................................... I 1.1.1软件环境 ........................................................................................................... I 1.1.2硬件环境 ........................................................................................................... I 1.1.3开发平台 ........................................................................................................... I 1.2功能需求 ....................................................................................................... I 1.2.1数据字段 ........................................................................................................... I 1.2.2主要功能 ........................................................................................................... I 第二章总体设计 ...................................... II 2.1流程图 ......................................................................................................... II 2.2主要模块功能介绍 .................................................................................... III 2.2.1选择模块 ........................................................................................................ III 2.2.2增添删减模块 ................................................................................................ III 2.2.3查询模块 ........................................................................................................ I V 2.2.4排序模块 ........................................................................................................ I V 第三章详细设计 ...................................... IV 3.1源代码 ........................................................................................................ I V 第四章实体机测试..................................... XV 4.1测试的目标 ..................................................................................................... XV 4.2测试方法 ......................................................................................................... XV 4.3测试结果 ........................................................................................................ XVI 总结 .............................................. XXIII

c语言通讯录管理实验报告及源程序代码

C语言程序设计实训报告 课程名称 C语言程序设计实训 课题名称通讯录管理 专业软件工程 班级 K软件151 学号 姓名 指导教师 2016年 1 月 1 日

湖北汽车工业学院科技学院 C语言程序设计实训任务书 课程名称 C语言程序设计实训 课题通讯录管理 专业班级软件工程 学生姓名 学号 指导老师 审批

一、设计内容与设计要求 1.设计内容: 设计课题:通讯录管理 一、问题描述: 该设计实现对通讯录得管理功能,具体包括从键盘输入通讯录的信息、从指定的文件中读入通讯录的信息、按姓名查询通讯录的信息、按分类查询通讯录的信息、删除指定姓名的通讯录的信息、将通讯录信息保存在指定的文件中等。 二、功能要求: 1)能从键盘输入通讯录的信息(增加,输入时需要能检查该姓名的通讯录 的记录是否已经存在,如果存在,需要询问是否是覆盖还是增加,需要判断输 入的类型是否存在) 2)能从指定的文件中读入通讯录的信息 3)能按姓名查询通讯录的信息 4)能按分类查询通讯录的信息 5)能删除指定姓名的通讯录的信息 6)能将通讯录信息保存在指定的文件中 7)所有数据符合实际应用要求 2.设计要求: 1)设计正确,方案合理。 2)界面友好,使用方便。 3)程序精炼,结构清晰。 4)上机演示。 3.设计报告要求: 课程设计报告格式如下: 1)正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体,行距为22。 2)正文的内容:课题的主要功能、课题的功能模块的划分、主要功能的实现、程序调试、总结、附件(所有程序的源代码,要求对程序写出必要的注释)。 3)课程设计报告装订顺序:封面、任务书、目录、正文、评分、程序清单附件。 二、进度安排

用XML做通讯录实验报告

综 合 性 实 验 报 告 学院: 专业: 学号: 姓名:

计算机与信息技术学院综合性、设计性实验报告 专业:年级/班级:学年第学期 课程名称XML基础指导教师 本组成员 学号姓名 实验地点实验时间 项目名称个人通讯薄一的设计与实现实验类型综合性 一、实验目的 1、掌握XML文档的基本语法,能够得到格式良好的XML文档; 2、能够了解并掌握XML DTD的定义方法及其用途; 3、能够熟练使用XMLSPY来创建DTD文件及对应的有效的XML文件,并进行验证; 二、实验仪器或设备 学院提供公共机房,1台学生微型计算机。 三、总体设计(设计原理、设计方案及流程等) 设计原理:按照XML、DTD的语法规则来编写、保存文件XML、DTD文件。 设计方案及流程: 利用XML文档作为存储载体来存储个人通讯薄,按照以下要求设计并实现该通讯薄: 1、内含同学(classmate)、朋友(friend)、家人(home)等人员。每条通讯录至少包 含以下信息: a、姓名(name):必须有一个,其中包含一个枚举类型的性别(sex)属性; b、性别(sex):必须有一个; c、联系方式(tel):必须有一个; d、QQ号:一个或多个; e、地址(address):一个或多个; f、备注(other):一个或多个; g、根据需要可添加其它字段。

2、为该XML文档,编写DTD文档。 四、实验步骤(包括主要步骤、代码分析等) 1、按照以上设计编写一个规范的XML文档 这句话放为XML文件的声明,作为文件的第一行,在其前面不能有空白、其他处理指令或注释。XML声明以标识结束。在该XML声明中,属性version 的值为1.0,指出了该XML文件使用的XML版本,目前该属性的值只可以取1.0。属性encoding规定XML文件采用哪种字符集进行编码,在这encoding的值为“UTF-8”,那么标记的名字以及标记包含的文本内容中就可以使用汉字、日文、英文等。最后,文件在保存的时候必须选择UTF-8编码来保存,否则会出错。 如果在XML声明中没有指定encoding的值,那么该属性的默认值为UTF-8。 在XML文档中,有且仅有一个根标记,其他标记都必须封装在根标记中如图所示: 在该XML文件中,根标记的名字为“txl”,在根标记中封装了一个或多个名字为“title”、“classmate”、“friend”、“home”的标记。在名为“classmate”、“friend”、“home” 的标记下,又都包含了名为“name”、“sex”、“tel”、“QQ”、“address”、“other”的子标记,他们分别包含了姓名、性别、联系方式、QQ号、地址、备注这些信息。至此,该XML文件可以称为一个规范的XML文件。 使用XMLSpy,使用按钮检验XML文件的规范性,所得结果为:

数据结构实验一_通讯录

数据结构实验报告 实验名称:实验一——线性表 学生:大学霸 班级: xxxxxxxxxx 班序号: xx 学号: xxxxxxxxxx 日期: 2012年11月1日 1.实验要求 实验目的: 1.学习指针,模板类,异常处理的使用; 2.掌握线性表的操作实现方法; 3.培养使用线性表解决实际问题的能力。 实验容: 利用线性表实现一个通讯录管理,通信录的数据格式如下: struct DataType { int ID; //编号 char name[10]; // char ch; //性别 char phone[13]; // char addr[31]; //地址 }; 具体要求: 1.实现通信录的建立、增加、删除、修改、查询等功能 2.能够实现简单的菜单交互,即可以根据用户输入的命令,选择不同的操作 3.能够保存每次更新的数据 4.编写main()函数测试操作的正确性 2. 程序分析 编程完成通讯录的一般性管理工作如通讯录中记录的增加、修改、查找、删除、输出等功能。每个记录包含、、住址等个人基本信息。用《数据结构》中的链表做数据结构结合c语言基本知识编写一个通讯录管理系统。本程序为使用方便,几乎不用特殊的命令,只需按提示输入即可,适合更多的用户使用。对于建立通讯录管理系统,则需了解并掌握数据结构与算法的设计方法,提高综合运用所学的理论知识和方法独立分析和解决问题的能力。

2.1 存储结构 节点结构: 2.2 关键算法分析 本实验从整体上分为七大模块:( 1)输入联系人信息;(2)添加联系人信息;(3)查找 联系人信息;(4)查看联系人信息;(5)删除联系人信息;(6)修改联系人信息;(7)退出通讯录管理。 通讯录系统图 2.2.1通讯录的建立 伪代码: 1.在堆中申请新的结点; 2.新节点的数据域为a[i]; 3.将新节点加入到链表中; 4.修改尾指针; 5.全部结点插入后需要将终结结点的指针域设为空。 C++实现: ContactBook::ContactBook(DataType a[],int n)//尾插法 { front=new Node; rear=new Node;

XML技术实验1—XML语法

图XML文档结构

②(选做)编写一个XML文档来描述其中包含的所有信息,要求通过XML元素的正确嵌

4 A006 Fred 5 A003 Big Ears 6 A004 Inspector Gadget 7 A004 Don Adams M101 A001 2005/4/15 Crack the code Mission Accomplished M102 A001 2006/2/15 Get the source Mission Accomplished M103 A001 2006/5/4 Hit the rapid In Progress

Android实验报告_基于SQLite的通信录

第一次实验Android界面设计 一. 实验目的及实验环境 1. 实验目的 1)掌握SQLiteOpenHelper类结构 2)掌握基于SQLite数据库的应用开发过程 3)掌握Content Provider发布数据的方法 4)掌握Content Resolver获取数据的方法 2.实验环境 系统开发平Android Studio 3.0 系统开发平台:Android 7.1 运行平台:Windows10 x64 运行环境:https://www.wendangku.net/doc/351101402.html, Framework SDK 2.0 二. 实验教材、组织方式、实验内容 1.实验教材:Andorid开发与应用 2.组织方式:个人独立完成 2.实验内容: 实现基于SQLite数据库的通信录应用,通过单击增加图标打开添加通信录界面,通过单击通信录中的各条信息可删除选中项。 三.方案设计 Android系统中集成了SQLite数据库,并且为数据库的操作提供了相关的类和方法,便于没有数据库开发经验的开发者编写程序。另外,Android平台中利用Content Provider机制来实现跨应用程序数据共享。一个应用程序可以通过Content Provider来发布自己的数据,其他的应用程序可以通过Content Resolver 来获取共享数据。

四.运行结果

五.总结 通过这次实验掌握了SQLite OpenHelper类结构,掌握了基于SQLite数据库的应用开发过程以及Content Provider发布数据的方法和掌握Content Resolver获取数据的方法。 六.附录:源代码 主布局文件activity_main.xml:

XML实验报告——XML文件的两种显示方式

XML实验报告 计算机学院 软件工程

一、实验题目 XML文件的两种显示方式 二、实验目的 1.理解CSS; 2.学会使用CSS显示XML文件; 3.理解XSL; 4.学会使用XSL显示XML文件; 5.对比CSS和XSL; 三、实验代码 1.用DTD文件生成的XML文件 书1 敖阳月 邮箱1 10 天津出版社

出版社地址1
出版社编号1 出版社邮箱1 书2 敖阳月 邮箱2 20 出版社名2
出版社地址2

Java实验通讯录 实验报告

集中上机实习报告实验题目用java实现简单功能的学生通讯录

实验题目 用java实现简单功能的学生通讯录; 需求分析和系统设计 需求分析要实现的功能分析: 通过题目可知要设计一个学生通讯录,要求实现简单的通信录管理,能够 输入通信录卡片(实现增、删、改等功能),能够分组,并能够实现按名字(或 其他方式)查询功能; 实现界面:可以是DOS界面,功能按提示方式输入实现;可以是Windows界面,功能用菜单形式,输入界面用对话框形式。 概要设计 为了实现实现通讯录界面,需要完成对电话簿的添加,删除,修改功能,因此只需要完成对这三个按钮事件的处理。这三个按钮同样可以用一个监听器 类来实现事件的监听。区分他们的方法同样是根据按钮标题的不同来区分,当 鼠标单击列表组件时,显示不同人员的联系信息,所以需要为列表组件添加鼠 标事件监听器。 算法分析 在实现功能时只用了简单的面向对象的设计方法,在处理多个按钮事件时,区分按钮的关键是按钮的标题区分,我用了按钮命令事件处理,并用if else 来区分“添加”,“删除”,“修改”这三个按钮。界面上放入一个列表主件, 一个“姓名:”的标签和一个输入姓名的编辑框,一个“电话:”的标签和一 个联系电话的编辑框,一个“地址:”的标签和一个地址的编辑框,还有“添加:”、“删除:”、“修改:”等按钮,及对mouseClicked 事件的监听类。 构造了 JFrame mainFrm 为主窗口, JTextField name 为姓名输入框, JTextField tel 为电话输入框, JTextField add 为地址输入框,

JList dataList 为列表组建, String[] ming 为姓名数组, String[] phone 为电话数组, String[] addr 为地址数组。 在实现过程中,定义PhoneBook类继承了MouseAdapter类与ActionListener接口,就可以用Book类来实现按钮命令监听器和鼠标事件监听器。如果出现错误操作,会在控制台出现异常,且操作无效。 模块划分与说明 学生表 流程图 1,进入通讯录后先在姓名输入框内输入姓名如xx,在电话输入框内输入联系电话,在地址输入框内输入地址; 2,点击“添加”按钮,姓名xx出现在面板左侧的列表中; 3,(1)继续1,2,步骤可向学生通讯录中添加更多学生信息如yy; (2)可对已添加的学生信息进行修改,如将xx的电话号改变:在列表中点击xx姓名,对xx信息进行修改,最后点击“修改”按钮,修改后的信息被保存; (3)可对已添加的学生信息进行删除操作,如将xx的信息删除:在列表中点击xx姓名,然后点击“删除”按钮,即可将学生信息删除;

C语言实验报告材料 通讯录

C语言集中上机报告 通信录 院系: 班级: 姓名: 合作者: 指导教师:

2015年6月1日 目录 一概述 (3) 课程设计的目的 (3) 二总体方案 (4) 三程序的调试与运行结果说明 (4) 四课程设计总结 (6) 五后记 (7) 六附录 (7) 参考文献 (11)

一概述 课程设计的目的 实现个人通讯录管理,录入包括姓名、地址、邮政编码、电话号码的信息。其中: 1、对n名学生包括姓名、地址、邮政编码、电话号码等信息进行输入; 2、显示所有记录的信息,若无记录,则给出提示信息; 3、可以按姓名进行查询; 4、可以按姓名进行删除; 6、退出程序 1.课程设计的要求 教师要求: 1、为通信录数据定义类型和定义通信录变量,实现功能:存取、显示、删除记录、查询记录等功能。 2、要求:界面友好,易于操作。(本题目限最多一个人完成) 需要的基本知识和技能: 1、利用C语言进行程序设计的能力; 2、理解和运用结构化程序设计的思想和方法; 3、初步掌握开发一个小型实用系统的基本方法; 4、学会调试一个较长程序的基本方法; 5、学会利用流程图或N-S图表示算法; 6、掌握书写程序设计开发文档的能力。 2.课程设计的主要设计思想 整个程序的设计是通过对每一个功能的设计,然后,再对每一个功能的程序进行模块化,从而形成一个完整的管理系统。自顶向下、逐步细化、逐步求精。在对于给定问题进行透彻的了解和详细的分析的基础上,把问题分解成若

干个按顺序执行的逻辑部分(称为“模块”)。每个子任务如果仍很复杂,还可以再分解为若干个子任务。对于每个模块的设计都采用这种“自顶向下、逐步细化”的方法,将它们分解成为基本结构为止,就如同写文章先拟出题目和中心内容,再确定分为几大部分,每一大部分又分哪几节,每一节分为几段,每一段包括哪几个意思,这就是“自顶向下,逐步细化”的方法。 二总体方案 整体设计思路:程序主要运用到了文本文件的打开和读取,文件中存取信息的格式为结构体数组,一个主函数下面分为个子函数。此程序运行的前提是必须首先在编译器的子文件中建立一个文本文件,则可以在运行程序的过程中对这个文本文件进行相关读取。 主要特点及具备功能:简洁明了,易于读者阅读。运用了链表结构,可以自动开辟内存空间储存,操作简单,运用了while循环。 整体框图: 三程序的调试与运行结果说明 主界面和菜单: 结构体构造初始化文件添加联系人显示联系人查找联系人 删除联系人退出

通讯录实验报告

实验课程名称通讯录管理系统 专业班级 10级计科1班 学生姓名 学号 指导教师 2012至2013学年第一学期第1 至18 周

目录 第1章概述 (3) 1.1现状分析 (3) 1.2实现意义 (3) 第2章系统分析 (4) 2.1用户需求分析 (4) 2.2管理者需求分析 (4) 第3章概要设计 (5) 3.1主控菜单设计 (5) 3.2 总结构设计流程图 (6) 第4章详细设计 (6) 4.1通讯录建立模块设计 (6) 4.2通讯录查询模块设计 (7) 4.3通讯录删除模块设计 (7) 4.4通讯录链表的输出模块设计 (8) 第5章运行与测试 (9) 第6章总结和心得 (9) 参考文献 (10) 附件(源代码) (10)

第1章概述 1.1现状分析 日益繁多的人际交往使得我们很难记住与每个人之间的联系方式,通讯录能够便捷的给我们带来所需要的相关信息。为了实现通讯录管理的几种操作功能,首先设计一个含有多少个菜单项的主控菜单程序,然后再为这些菜单配上相应的功能。 1.2实现意义 随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机或者手机中的电话簿程序来帮助人们记住这些事情,极其简便。这就需要有一个使用的通讯录管理系统,用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。通讯录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统,它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。然而要靠计算机来记住这些信息,首先就得要求用单链表做数据结构,设计一个实现通讯者信息的输入、查询、删除、输出、等功能的通讯录管理系统。每条通讯者信息包含:编号、姓名、性别、电话号码、地址等信息。

《通讯录管理系统(c语言)》实训报告(含代码)

《高级程序设计》课程实训报告 题目:通讯录管理系统 完成人: 专业班级: 学号: 指导教师: 2012年 1 月 5 日

1 题目与要求 1.1 问题提出 本人计划编写一个通讯录管理系统。通讯录一般包括通讯者的姓名、电话及类别等信息,用来管理学生基本信息及成绩信息。 要求实现通讯者的插入、查询、删除等操作。 1.2 本系统涉及的知识点 结构、数组、循环、函数、分支、文件操作等。 1.3 功能要求 1、建立学生信息,每个通讯者的信息包括:姓名、电话号码、QQ、类别(小学,初中,高中,大学); 2、新增通讯录信息; 3、根据姓名,电话号码,QQ等查找该通讯者的信息并输出; 4、输入通讯者的姓名,进行查找并修改信息,若不存在该通讯者,则提示说明; 5、根据姓名删除指定信息; 6、显示全部的通讯者信息; 7、能够将输入信息导出文件,同时能把文件导入到内存中; 8、退出整个系统操作。 2 功能设计 2.1 算法设计 1、利用switch语句设计如图1所示的主菜单:

图1 学生信息管理系统主菜单 2、菜单选项示例: 选择1后,调用新增函数,进入函数后利用printf(),scnaf()语句实现一个如图2所示的输入。 图2 排序子菜单

选择2后,调用查找函数,进入函数后利用switch语句实现一个如图3所示的菜单,该菜单中每个选项调用一个函数,完成通讯录信息的查找。

图3 查找子菜单 3、根据所选菜单编写相应代码: 1)主函数main():根据选单的选项调用各函数,并完成相应的功能。 2)菜单函数menu():显示提示选单。 3) 新增函数add():在通讯录结构体总追加入新的通讯录信息,并返回选单。 4)查找函数find():查询某人的信息,如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。 5)修改函数alter():修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。 6)删除函数Delete():删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。 7)显示函数list():显示通讯录中的所有记录。 8)导入函数input():能从指定的文件中读入通讯录的信息. 9)导出函数output的:能将通讯录的信息写入指定的文件中 10)退出函数 quit():退出选单。 11)名字查找函数Find():作为查找,输入修改,删除时调用的名字查找函数,判断是否存在要查找的记录,若存在则返回‘0’,不存在则返回其他值。 12)电话号码查找函数Find_num(),QQ查找函数Find_qq(),类别查找函数Find_type()与名字查找函数功能一致。

XML实验报告

XML应用基础 专业: 学生姓名: 学号: 湖南农业大学信息科学技术学院

实验1,2 熟悉XML环境及编写XML文档 一、目的和要求: 1、掌握XML文档的基本结构 2、掌握XML的基本语法规则 3、掌握使用XML的开发工具XMLWriter 4、掌握XML实体的简单使用 5、掌握CDATA字符数据定界符的使用 二、实验内容与要求: 1、实验内容: (1)熟悉XML编辑器的基本使用方法(XMLWriter); (2)打开XMLWriter熟悉基本功能和界面组成; (3)为学生信息建立一个XML文档,结果应该为合法有效的。 2、程序的编写要求: (1)文档内容要求:05级(班级(学生信息(学号、姓名、班级、电子邮件、QQ、通信地址(省份(或州)、城市、街道、邮政编码)))); (2)并且要求建立至少2个班级,每个班级至少五个学生的信息; (3)在使用过程中根据个人设计,使得XML文档中包含以下技术的使用: a、5个预定义实体引用的使用 b、CDATA字符定界符的使用 c、属性的简单使用 d、注释的使用 e、空元素的使用 三、实验步骤: 1、设计出各个元素之间个关系结构图; 2、根据关系结构图生成相应的XML; 3、为XML输入相应的学生数据; 4、将该文档存为学生信息XML文档; 5、修改调试,直到在浏览器中可以看到正确的结果;

相关代码: 050101 张三 1234567 湖南省 长沙市 金星路 410100 050102 李四 湖南省 长沙市 五一路 410100 050103 王五 湖南省 长沙市 万家丽路 410100 050104 罗莉

通讯录实验报告

安徽理工大学 数据库系统概论课程设计说明书 题目: 通讯录系统 院系:计算机科学与工程学院 专业班级:电子信息技术及仪器11-1班 学号: 2011302807 学生姓名:周松林 指导教师:胡胜利 2013年 06月 10日

安徽理工大学课程设计(论文)任务书计算机科学与工程学院

2013年03月20日安徽理工大学课程设计(论文)成绩评定表

目录 1 需求分析 (1) 2 总体设计 (2) 2.1数据库设计 (2) 2.1.1通讯录系统的数据字典 (2) 2.1.2概念结构设计 (2) 2.1.3通讯录数据库逻辑结构设计 (3) 2.2通讯录数据库实现 (3) 3 详细设计 (4) 3.1建立数据库 (4) 3.2进行数据库连接 (5) 3.3程序代码 (9) 4 总结 (15) 参考文献 (16)

1 需求分析 设计通讯录系统的总体目标:利用所学的VC++和数据库系统的相关知识,设计出具有一定功能的通讯录系统。在本次程序设计,我是在SQLsever中建立相应的表,然后应用ODBC将数据库与VC++链接起。 通讯录的基本功能如下: (1)具有查找功能。编写查找程序代码,用户根据自己需要,通过VC++功能界面查找所需内容。 (2)具有删除功能。编写删除程序代码,通过VC++功能界面删除数据库中的记录。 (3)具有编辑功能。编写相应编辑程序代码,实现对数据库中的记录的修改,达到用户目的。 (4)具有插入功能。编写相应插入程序代码,实现对数据库进行插入记录功能。

2 总体设计 2.1数据库设计 2.1.1通讯录系统的数据字典 由于本次课程设计的内容是设计通讯录系统,根据用户需求,建立以下联系人基本信息表,如下表所示。 表2-1联系人基本信息 2.1.2概念结构设计 通过需求分析构造基本表,确定了通讯录的数据项。然后将需求分析得到的用户需求抽象为信息结构,画出E-R图。如下图所示:

XML实验报告

本科生实验报告 实验课程XML语言 学院名称 专业名称 学生姓名 学生学号 指导教师 实验地点 实验成绩 二〇一年月二〇一年月

填写说明 1、适用于本科生所有的实验报告(印制实验报告册除外); 2、专业填写为专业全称,有专业方向的用小括号标明; 3、格式要求: ①用A4纸双面打印(封面双面打印)或在A4大小纸上用蓝黑色水笔书写。 ②打印排版:正文用宋体小四号,1.5倍行距,页边距采取默认形式(上下 2.54cm,左右2.54cm,页眉1.5cm,页脚1.75cm)。字符间距为默认值(缩 放100%,间距:标准);页码用小五号字底端居中。 ③具体要求: 题目(二号黑体居中); 摘要(“摘要”二字用小二号黑体居中,隔行书写摘要的文字部分,小4 号宋体); 关键词(隔行顶格书写“关键词”三字,提炼3-5个关键词,用分号隔开,小4号黑体); 正文部分采用三级标题; 第1章××(小二号黑体居中,段前0.5行) 1.1 ×××××小三号黑体×××××(段前、段后0.5行) 1.1.1小四号黑体(段前、段后0.5行) 参考文献(黑体小二号居中,段前0.5行),参考文献用五号宋体,参照《参考文献著录规则(GB/T 7714-2005)》。

实验1、编写格式良好的XML文档 一、实验内容 要求:格式良好,包含XML声明、合理的元素嵌套结构、属性、注释、名称空间。能合理体现下列数据的语义。 学生信息: 学号(声明为id类型属性),姓名,性别,出生日期 课程信息: 课程编号(声明为id类型属性),课程名,学分,课程说明 成绩信息: 成绩(考虑补考及重修) 实例文档:多个学生、多门课程的成绩(不少于3个学生2门课程) 二、实验过程 Adele female 1995/06/02 Linda female 1994/06/25 Frank male 1995/07/13 Bob male 1995/05/14

数据结构实验报告之通讯录的实现

数据结构实验报告之通讯录的实现 一、实验题目 利用线性表实现一个通讯录管理,通信录的数据格式如下: struct DataType { int ID; //编号 char name[10]; //姓名 char ch; //性别 char phone[13]; //电话 char addr[31]; //地址 }; 要求: ?实现通讯录的建立、增加、删除、修改、查询等功能 ?能够实现简单的菜单交互,即可以根据用户输入的命令,选择不同的操作。 ?能够保存每次更新的数据(选作) ?能够进行通讯录分类,比如班级类、好友类、黑名单等等(选作) ?编写测试main()函数测试线性表的正确性 二、实验目的 1、熟悉C++语言的基本编程方法,掌握集成编译环境的调试方法。 2、掌握线性表的操作的实现方法。 3、运用线性表解决实际问题。 三、实验内容 通过编写一个C++程序完成一个简易的通讯录管理系统,能够实现建立,增加,删除,修改,查找,浏览,输出,菜单等基本功能。管理系统中每个元素含有成员的ID、姓名、性别、电话、地址等信息。程序是使用链表的功能,通过一些算法简单的实现。 四、算法思路与主要代码 1. 通信录管理结构:建立,增加,删除,修改,查找,浏览,菜单。 2.建立通讯录 构造函数,建立头节点 PHONEBOOK::PHONEBOOK() { first = new DataType; first->next = first->prior = first; first->ID = 0; }

头插法,添加联系人 1:在堆中建立新结点 2:将 a[i]写入到新结点的数据域 3:修改新结点的指针域 4:修改头结点的指针域,将新结点加入链表中 即 1:Node * s=new Node 2:s->data=a[i] 3:s->next=front->next; 4:front->next=s 代码实现 void PHONEBOOK::Insert() { DataType *data = new DataType; data->next = first->next; data->prior = first; first->next = data; data->next->prior = data; m++; data->ID = m; 3.查找联系人 按姓名查找查找是指用户输入要查找的联系人的姓名,系统该函数内找到该联系人,返回该联系人数据域的指针,在主函数中输出该联系人的全部信息。 即1. 初始化工作指针p; 2. 循环以下操作直到p为空或找到用户 1. 如果p的数据等于i,则返回P的数据域指针; 2. P指针指向下一个节点; 3.若找不到返回空指针。 代码实现 void PHONEBOOK::Search() { cout << "请输入要查找的联系人的姓名:"; char aname[10]; cin >> aname; DataType *p = first->next; while (p) { //找到则输出信息 if (strcmp(p->name aname) == 0) {

相关文档
相关文档 最新文档