文档视界 最新最全的文档下载
当前位置:文档视界 › c语言程序设计——简单的通讯录系统(实验报告)

c语言程序设计——简单的通讯录系统(实验报告)

c语言程序设计——简单的通讯录系统(实验报告)
c语言程序设计——简单的通讯录系统(实验报告)

C语言课程设计报告书

实验题目通讯录管理系统

一、实验目的

通过进行计算机实践,更加系统地理解和掌握C语言的基本概念、语言特点和编程技巧。利用系统提供的标准函数和自定义函数进行程序设计,培养利用C语言设计综合程序的能力。

二、实验内容

在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用。

三、需求分析

本学通讯录管理系统包含输入信息,显示信息,查询信息, 修改信息,追加信息,删除信息,修改密码,七大功能.其中查询模块又分为按姓名查找,按号码查找.

输入信息(Input)

显示信息(Output)

查询信息(Look)

修改信息(Change)

追加信息(Add)

删除信息(Delete)

修改密码(Key)

四.概要设计

1.系统分析

功能模块图:总目录以及下属的各个模块,这样可以使得程序的书写脉络清晰流畅。

程序结构图

2、模块功能说明

输入信息模块: 调用input()录入用户的通讯信息。

输出信息模块: 调用output()建立循环,输出全部通讯录信息。

查询信息模块:调用look()函数按照姓名、号码等通讯信息进行查找

追加信息模块:调用Add()追加通讯录信息

修改信息模块:调用change()函数按照姓名、号码、地址等通讯信息进行选择性的修改

删除信息模块: 调用delete()函数删除一条通讯录信息

修改密码模块:调用save_key()函数核对两次输入的新密码若相同保存新密码

于key.txt。

保存模块:调用 save()函数对最终所保留的信息进行保存,保存于friend.txt。五.详细设计及运行结果

主程序流程图

查询模块流程图

密码修改模块流程图

六、调试情况,设计技巧及体会

个人总结

经两周的程序设计就要走向尾声了,这两周的实践让我获益匪浅,不但复习了以前学习过的知识,还学会了很多新东西新内容,最重要的是提升了自己从历小做起,把握全局的能力。如果说学习C语言的知识是“点”,那么这次程序设计就是“点成线”甚至“线成面”的过程。虽然现在来看,我的知识掌握情况还只是停留在浅尝辄止、只知皮毛的阶段,但是现在我已经有了继续提升的信心与决心。

下面对自己近两周的学习实践做以总结。

然而,程序设计本身就是一项精密细致的工作,从第一步做起是必须的。在细致复习了《C语言程序设计》的所学内容之后,我借鉴课后例题“超市商品管理系统”的范例构建出了程序的骨架和结构,确定了大的方向,之后一个模块一个模块设计,积少成多,最终完成设计。

作为一个初学者,我在编程过程中出现了很多问题,经过了很长时间的调试才将最终程序完成,下面列举具体问题。

起初程序没法在下次运行时提取数据,而且输入数目也有限。经过改进,我定义一个静态变量h加以限定长度并在程序结束时将h单独保存,这两个问题就同时解决了。

另外程序运行过程中有些提示信息总是一闪而过,经查阅,在需要停滞语句后加入sleep()函数使其得以保留一段时间,而希望在模块退出前保留页面可以追加一句getch()。

虽然程序设计完成了,但是我仍然存在着问题,比如没能实现密码用*输入,比如程序依然不够美观。今后,我会继续努力,实现自我的提升!

任何事情都没有一夜成功的,任何事情都需要步步为营,踏实苦干。本次程序设计既是对我技能的提高,也是对我人生认识的升华。今后,我将更加努力,

更上一层楼!

参考文献:《C语言程序设计》(第二版)王曙燕科学出版社七、源程序清单(略,详见电子版实验报告*在tubor C环境下运行)

通讯录管理系统实验报告

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

C语言课程设计报告—手机通讯录管理系统

C程序课程设计报告 --手机通讯录管理系统 姓名:谢骏 学院:珠宝学院 学号:649 班级:141082

一课程设计目的和内容概述 1.目的:加深对《C语言》课程所学知识的理解,进一步巩固C语言编程方法。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力,加强动手能力。 2.内容:设计一个简易的手机通讯录管理系统。该题目要求在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、、绘图函数,以及文件的读写操作等。 其中结构体,函数的调用,算法的设计是尤为重要的。 二题目 手机通讯录管理系统。 [问题描述] 该系统模拟手机通讯录管理系统,实现对手机中的通讯录进行管理 [基本要求] 要能提供以下几种功能: (1)查看功能:选择此功能时,列出下列三类选择:

A:办公类B:个人类C:商务类 (2)当选中某类时,显示出此类所有数据中的姓名和电话号码 (3)添加数据功能:能录入新数据,每个结点包括:姓名,电话号码,分类(可能选项有:w为办公类p为个人类b为商务类),电子邮件。例如:杨春商务类 当录入重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通讯录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改。 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。 三程序设计 1.总体设计 首先,因为每个个体有多种信息,所以要建立结构体来储存和整合各个信息。然后利用模块来分别实现程序的各个功能。各个模块用函数来实现。在通过通过主函数来判断输入字母,从而调动函数,实现所需功能。最后将输入的文件保存在文件里,以便重复使用。 2.详细设计

简单的通讯录实验报告

( 二〇一二 年 十 月 课程设计说明书 本科毕业设计 题 目:简单通讯录程序 学生姓名:李天罡 学 院:工学院 专 业:数字媒体技术 班 级: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语言程序设计课程设计-通讯录管理系统

通讯录信息管理系统设计计算机学院计算机科学与技术专业 1.课程设计的目的 学习了C语言程序设计这门课程之后,使我对程序设计有了一定的了解,为了熟练掌握C语言的语法特点、及其数据结构,提高自身编写程序的能力。通过课程设计实现理论知识与实际情况的结合,使所学知识能够在现实社会中起到一定的作用,防止所编写的程序脱离实际,让程序可以更好的发挥作用,以便减轻实际工作中所遇到的繁琐步骤,提高现实工作中的效率。此外通过课程设计提高逻辑思考能力和解决实际问题的能力。程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。这当中就有一个严谨治学、一丝不苟的科学精神的培养,又有一个不怕失败、百折不挠品格的锻炼。 通讯录信息管理系统是生活中不可缺少的部分编写了一个通讯录信息管理系统是十分必要的。 本程序设计具有通讯信息的录入,进行保存、查找、删除等功能,操作界面简洁美观,易于操作。程序用了条件、循环、指针、结构体等知识点,综合了文件的打开和保存编写的。软件运用菜单实现交互式管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足的需要。 通过对通讯录管理系统的设计,进一步理解和掌握C语言这门课程的知识点,能够熟练的调用各种函数,把各种C语句有机的结合起来,提高自己C语言程序设计的能力,为今后解决实际问题打下良好基础。

2.设计方案论证 2.1设计思路 建立一个函数,用来添加、显示、删除、查询、修改、保存通讯录等信息,完成通讯录的功能。主函数可以调用六个子函数,分别完成添加记录、显示记录、删除记录、查询记录、修改记录、保存记录、退出系统等功能。在主函数中可以以1、2、3、4、5、6数字键分别可以执行某个功能模块。 2.2程序设计 2.2.1根据图1定义数据类型建立函数 typedef struct { char Num; //编号 char Name[10]; //姓名 char Tel[15]; //电话号码 char Email[20]; //邮箱 char age[8]; //年龄 char adds[20]; //住址 }Person; 2.2.2主函数及其流程图 定义主函数main()和一系列的功能函数,只有通过这些函数才可实现程序

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)课程设计报告装订顺序:封面、任务书、目录、正文、评分、程序清单附件。 二、进度安排

通讯录管理系统课程设计报告书C语言

二〇〇八~ 二〇〇九学年第二学期 信息科学与工程学院 课程设计报告书 课程名称: C语言课程设计 班级:

学号: 姓名: 指导老师: 月九年二〇〇九 通讯录管理系统 一.需求分析 设计题目及要求: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子邮箱等; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 系统功能需求分析: 主要包含一下多种功能: 添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件 二.概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。. 显示:可以以表格形式输出所有通讯录里的记录 删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询 修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改 保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件 三.详细设计 (1).通讯录: typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/ char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person; void main() /*主函数*/ { int n=0; for(;;) { switch(menu_select())

数据结构实验一_通讯录

数据结构实验报告 实验名称:实验一——线性表 学生:大学霸 班级: 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做通讯录实验报告

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

计算机与信息技术学院综合性、设计性实验报告 专业:年级/班级:学年第学期 课程名称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文件的规范性,所得结果为:

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.docsj.com/doc/c53773794.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:

C语言程序设计学生通讯录管理系统

C语言程序设计学生通讯录管理系统 文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

#define null 0 struct record { char name[20]; char phone[20]; char adress[40]; char postcode[10]; char e_mail[30]; }student[500]; struct LinkList { struct record US; struct LinkList *next; }a; struct LinkList *head=null; int num=0; FILE *fp; int menu_select(); int adduser(); int list(); int search(); int display(); int add();

int listbyname(); int dele(); int save(); int exit(); void main() { system("cls"); for(;;) { switch(menu_select()) { case 0:adduser();break; case 1:list();break; case 2:search();break; case 3:add();break; case 4:dele();break; case 5:save();break; case 6:exit(0); } } } menu_select() {

char s[80]; int a; printf("*_* press any key enter menu! *_* \n"); getch(); system("cls"); printf("\t\t********************MENU*********************\n\n"); printf("\t\t 0. 输入记录\n"); printf("\t\t 1. 显示记录 \n"); printf("\t\t 2. 按姓名查找\n"); printf("\t\t 3. 插入记录 \n"); printf("\t\t 4. 删除记录\n"); printf("\t\t 5. 记录保存文件\n"); printf("\t\t 6. Quit\n"); printf("\t\t***********************************************\n"); do{ printf("\n Enter you choice(0~11):"); scanf("%s",s); a=atoi(s); } while (a<0||a>11); return a; } adduser()

C语言课程设计通讯录实验报告

太原学院计算机工程系 课程设计报告 课程名称:数据结构课程设计 姓名:苏建花 专业班级:计算机工程系网络三班 指导教师:翟婷婷 2015年12 月30日 计算机工程系课程设计报告 课程名称:C语言课程设计 课程设计题目:通讯录管理系统 班级:网络14-3班姓名:苏建花学号: 目录(参考) 1.设计目的与要求…………………………………………X 1.1题目与设计要求……………………………………X 1.2本程序涉及的知识点………………………………X 2.功能设计………………………………………………X 2.1总体设计……………………………………………X 2.2详细设计……………………………………………X 3.程序实现……………………………………………X 3.1程序实现时应考虑的问题…………………………X 3.2 XX模块核心代码…………………………………X 4.测试分析……………………………………………X 4.1 测试结果及分析…………………………………X 4.总结…………………………………………………X 参考文献………………………………………………X 1、设计目的与要求 这次课程设计的目的在于: 1.熟练的掌握C语言课程中所学的理论知识,并对其进行应用; 2.通过综合C语言的基本知识来解决实际问题; 3.加强分析和解决问题的能力; 4.提高实践动手能力,将知识化为实际成果

1.1 题目与设计要求 (1)题目:通讯录 (2)设计要求 a、建立通讯录信息,信息至少包含姓、名、电话号码、住址、分类(如同事、朋友、 同学、家人等)等。 b、该系统提供添加、删除、修改和查找功能,其中按姓名方式删除、修改,按姓名、 姓氏方式查找。 c、将通讯录保存在文件中。 d、能够输出通讯录中的信息。 1.2 本程序设计的知识点 (1)采用结构体数组。 struct Person { char a[16]; char s[16]; char d[16]; char f[24]; struct Person *next; }stu; (2)运用函数之间的调用 主函数可以调用子函数,子函数之间可以相互调用,子函数不能调用主函数,主函数可以多次调用一个子函数,也可以一次调用多个子函数。 (3)利用指针变量 struct Person *head; struct Person *p1,*p2 2 、功能设计 添加:添加通讯录记录 修改:修改通讯录记录 删除:删除通讯录记录 查找:查询通讯录记录 显示:显示通讯录记录 统计:统计通讯录数目 2.1需求分析 信息记录要存放到文件中去,因而要实现文件的输入输出操作;要实现数据的插入、删除、修改和显示功能,因而要实现插入、删除、修改和显示操作;要实现按人名或姓氏进行查询的功能,因而要提供查找操作;另外还应该提供键盘式选择菜单以实现功能选择。

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语言课程所学知识的理解,进一步巩固C语言算法规则.学会编制结构清晰.风格良好.数据结构适当的C程序,从而具备解决综合性问题的能力. 二、内容 在熟练掌握C语言的基础知识:数据类型(整型.实型.字符型.指针.数组.结构等); 运算类型(算术运算.逻辑运算.自增自减运算.赋值运算等);程序结构(顺序结构.判断选择结构.循环结构);大程序的功能分解方法(即函数的使用)等.进一步掌握各种函数的应用以及文件的读写操作等. 三、实验任务:通讯录 设计要求:实现菜单设计,使用数据文件保存和修改,应用结构体和指针 功能要求:通讯录信息生成,存储,查询,修改,插入,删除,打印等. 四、设计思路 1.通讯录的主要信息包括:编号,姓名,性别,联系电话.住址,邮编. 2.用结构体数组来存储信息,有Data_Input函数来实现信息的录入,用Data_Show函 数来显示打印信息,用Data_Sreach函数来查找信息,用Data_Insert函数来插入信 息,用Data_Alter 函数来修改信息,用Data_Delete函数来删除信息,用Data_Save 函数来保存信息,用Exit函数来退出通讯录. 3.小组分工,每个人分配几个函数,按情况进行分配任务. 五、程序代码 #include/*字符函数和字符串函数*/ #include/*字符模式函数(调用getch()函数)*/ #include/*输入输出函数*/ int i; struct friend/*电子通讯录结构定义*/ { char num[5]; /*编号*/ char name[11]; /*名字*/ char sex[2]; /*性别*/ char phone[12]; /*电话*/ char address[26]; /*地址*/ char post_num[11]; /*邮编*/ }friends[50]; FILE *fp; void Data_load() /*数据载入函数*/ {int j; fp=fopen("friend.txt","r+"); /*打开文件friend.txt*/

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循环。 整体框图: 三程序的调试与运行结果说明 主界面和菜单: 结构体构造初始化文件添加联系人显示联系人查找联系人 删除联系人退出

C语言通讯录系统课程设计报告

通讯录系统的设计与实现电子科技大学电信三班傅得耕 3.1系统的需求分析 通讯录系统作为一个应用软件将为人民提供一个可以串联人与人之间的信息的一个平台。根据系统界面的提示信息对通讯录进行查询、初始化等操作。 系统功能需求分析描述如下: (1)创建联系人。 (2)显示所有联系人:显示可以进行的操作。 (3)删除联系人。 (4)查询:根据进行查询,并可显示所有关于该人的信息。(5) :退出。 3.2系统的设计 3.2.1 系统的总体设计 下面从系统的整体流程的功能模块、系统界面及数据结构进行总体设计。 (1)总体思想 本系统主要设计思想是实现通讯录系统信息的创建联系人、删除、查找等主要功能。系统的设计方法是结构化实际方法,系统用C语言进行开发用户可以清晰的了解联系人的情况。 (2)系统模块结构图 根据需求分析结果,通讯录系统可以分为五大模块:创建联

系人模块、显示功能模块、查找联系人功能模块、删除联系人模块以及退出模块。 系统模块结构如图: 3.2.2 系统的概要设计 ㈠系统主菜单。 显示系统的主菜单,里面有相应的功能代码,根据选择各功能代码进入不同的界面。功能主要包括:退出系统、查询、创建显示及删除。 ㈡查询人物信息 进入此菜单功能模块,输入您要查询的图书的名字。 图书查询模块流程如图:

否是 是 重新输入 否 退出系统 3.3 测试结果 系统主界面

创建 显示系统 查询系统

删除系统 3.4 源代码 #include #include #include #define LEN sizeof(struct people) struct people {

通讯录实验报告

实验课程名称通讯录管理系统 专业班级 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()与名字查找函数功能一致。

c语言课程设计学生通讯录管理系统精编版

c语言课程设计学生通讯录管理系统 文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

题目:学生通讯录管理系统任务说明:主要利用c语言的文件操作能力设计开发一个小型的通讯录管理系统,至少具有如下功能:①记录通讯录内的人员的学号、姓名、地址、电话号码。 ②显示所有人员的信息。 ③通过输入姓名查找人员信息。 ④通过输入姓名查找到要删除的人员信息,然后可以进行删除。 ⑤通过输入姓名查找到要修改的人员信息,然后可以进行修改。 ⑥添加人员信息。 系统功能描述: 本程序的功能是为用户提供简单的通讯录进行管理,通过该程序存储联系人信息,提供关键字(只能是英文关键字进行查找)查找功能,可以对数据进行修改、删除、添加等操作。 各按钮的功能如下: 查找记录:以姓名为关键字,查找并显示该记录。若查找不到,则显示“好象没有”; 添加记录:将当前记录按姓名序加入通讯录,然后显示第一条记录; 修改记录:修改当前记录,显示当前记录。姓名为关键字,不允许修改; 删除记录:删除当前记录,然后显示第一条记录; 第一条记录:将当前记录指针移动至首节点,若已为首节点,则不移动; 前一条记录:将当前记录指针向前移动一个节点,若已为首节点,则不移动;

后一条记录:将当前记录指针向后移动一个节点,若已为尾节点,则不移动; 最后一条记录:将当前记录指针移动至尾节点,若已为尾节点,则不移动; 加载:从文件中掉入已保存的通讯录数据; 保存:保存通讯录数据; 退出:退出系统; 设计思路: 根据要求,电话录数据以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。 图1 系统功能模块图 软件中使用的结构体和结构体数组,如: struct callmember { char name[20]; char address[20]; char code[20]; char callnumber[20];

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