通讯录管理系统毕业设计详细报告Word格式.docx
- 文档编号:19198349
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:26
- 大小:315.12KB
通讯录管理系统毕业设计详细报告Word格式.docx
《通讯录管理系统毕业设计详细报告Word格式.docx》由会员分享,可在线阅读,更多相关《通讯录管理系统毕业设计详细报告Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
当今时代是飞速发展的的信息时代。
在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的原因。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
随着市场经济的发展和人们生活水平的提高,随着科学技术的发展,计算机领域不断取得新的研究成果。
计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。
本文论述了通讯录系统的整个开发过程,包括系统分析、系统设计、系统实现等方面。
实现对通讯录信息的增、删、改、查等功能,以多文档界面形式实现。
该软件具有方便性、可靠性、寿命长、可行性、安全性的优点。
一个学校,单位,企业的通信录管理是一项重要工作。
计算机管理通信档案,日常办公,实现现代化办公,分析通信现状通过强大的查询和索检高效的索检出数据,提高办事效率。
目录
摘要……………………………………………………2
Abstract………………………………………………3
引言……………………………………………………6
一.设计系统的必要性和可行性……………………7
二.系统总体设计
2.1题目要求………………………………………10
2.2需求分析………………………………………10
2.3总体设计………………………………………10
2.31系统总体功能单元…………………………11
2.32系统总体流程图……………………………11
2.33系统运行总体界面预览……………………13
三.C语言以及VC6.0的优势
3.1C语言的优势…………………………………14
3.2VC6.0的优势…………………………………17
四.详细设计…………………………………………20
4.1通讯录信息输入模块…………………………20
4.2信息浏览与排序模块…………………………20
4.3通讯录查询模块………………………………24
4.4通讯录更改……………………………………28
4.5通讯录文件操作………………………………29
五.调试与测试………………………………………31
5.1数据录入………………………………………31
5.2测试浏览排序功能……………………………32
5.3测试查询功能…………………………………34
5.4测试通讯录的更改操作………………………36
5.5测试通讯录文件操作功能……………………38
5.6测试通讯录其他功能…………………………39
六.课程设计心得……………………………………41
七.谢辞………………………………………………42
八.参考文献…………………………………………43
第一章设计系统的必要性和可行性
管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以人事劳资管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长对于查找、更新和维护都带来了不少的困难。
1.1管理信息系统是企业的信息系统,它具备数据处理、计划、控制、预测和辅助决策功能,具体作用如下:
(1)用统一标准处理和提供信息,排除使用前后矛盾的不完整的数据。
(2)完整、及时提供在管理及决策中需要的数据。
(3)利用指定的数据关系式分析数据,客观预测未来。
1.2管理信息系统是企业的信息系统,它具备数据处理、计划、控制、预测和辅助决策功能,具体作用如下:
(4)向各级管理机构提供不同详细程度的报告,缩短分析和解释时间。
(5)向各级管理机构提供不同详细程度的报告,缩短分析和解释时间。
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
可行性研究是在软件开发前对软件项目的可行性做出细致而谨慎的评估。
在定义阶段及早发现将来可能在开发过程中遇到的问题,及早做出决定,可以避免大量的人力、财力、时间上的浪费。
因此,尽早对软件项目的可行性做出细致而谨慎的评估是十分必要的。
1.3经济可行性
进行开发成本的估算及可能取得效益的评估,确定待开发系统是否值得投资开发。
经济可行性研究涉及范围较广,包括成本-效益分析、开发所需的成本和资源,以及潜在的市场前景。
新生报到系统开发成本低,面向的是学校内的各个系,有一定的使用价值,所以该软件经济上可行。
第二章.系统总体设计
2.1题目要求
(1)所有记录保存在一个数据文件中;
(2)具备记录添加功能;
(3)查询功能(如按学号,地址查询);
(4)显示功能;
(5)排序功能(如按成绩排序)。
2.2需求分析
根据题目要求,对通讯录管理功能进行分析,按照要求提供输入、查询、排序、删除和显示等功能,在主菜单中进行操作使用。
2.3总体设计
通讯录总体上分为5个功能模块,包括通讯录信入,通讯录信息浏览与排序,通讯录信息查询,通讯录信息更改,通讯录及文件操作等五部分。
2.31系统总体功能单元:
2.32系统总体流程图(局部):
YN
N
Y
2.33系统运行总体界面预览:
三.C语言以及VC6.0的优势
3.1C语言的优势
1.简洁紧凑、灵活方便
C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。
它把高级语言的基本结构和语句与低级语言的实用性结合起来。
C语言可以象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
2.运算符丰富
C的运算符包含的范围很广泛,共有种34个运算符。
C语言把括号、赋值、强制类型转换等都作为运算符处理。
从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
3.数据结构丰富
C的数据类型有:
整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。
能用来实现各种复杂的数据类型的运算。
并引入了指针概念,使程序效率更高。
另外C语言具有强大的图形功能,支持多种显示器和驱动器。
且计算功能、逻辑判断功能强大。
4.C是结构式语言
结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。
这种结构化方式可使程序层次清晰,便于使用、维护以及调试。
C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
5.C语法限制不太严格,程序设计自由度大
虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。
6.C语言允许直接访问物理地址,可以直接对硬件进行操作
因此既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。
7.C语言程序生成代码质量高,程序执行效率高
一般只比汇编程序生成的目标代码效率低10へ20%。
8.C语言适用范围大,可移植性好
C语言有一个突出的优点就是适合于多种操作系统,如DOS、UNIX,也适用于多种机型
C语言是一种面向过程的基于模块的语言。
一般用在和汇编混和编程的嵌入式开发或者较低层的驱动程序开发,操作系统设计。
虽然开发周期长,代码维护成本高,可移植性差,但是程序运行效率高,可以更直接的控制硬件。
举个例子:
Firefox,我们大都所知道的最流行的优秀浏览器,它所用的语言就是C语言。
C语言执行效率高,仅次于汇编,硬件支持良好,现在的嵌入式开发普遍使用C语言,可移植性好,很多操作系统都支持C语言。
C语言是中级语言,间于高级和低级语言之间。
它把高级语言的成分通汇编语言的功能结合起来,所以使用它既可向上也可向下发展。
我们既可以使用C语言来进行低级的编程,也可以实现高级语言的某些特性。
其次C语言程序非常容易移植,只需稍微修改甚至不修改就可以在不同操作系统和机器间移植。
这对于一些系统来说是很值得一用的,比如说和硬件相关较大的嵌入式开发,如果用C语言编写后,就可以在大部分机器间移植,那是非常方便的,有些操作系统的大部分代码也是用C语言写的。
再次,用C语言编程可以获得高效机器代码,其效率几乎接近汇编语言代码。
这是高级语言很难办到的事,很多系统的实习性要求较高,使用高级语言达不到要求或者效果不好,使用汇编很麻烦,所以选择C语言是最合适的了。
另外,学好C语言后,可以把它作为跳板来学习其他语言也是理想的,因为C语言是中级语言,它结合了高级语言和低级语言的特性。
3.2VC6.0的优势
MicrosoftVisualC++6.0是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出VisualC++1.0后,随着其新版本的不断问世,VisualC++已成为专业程序员进行软件开发的首选工具。
虽然微软公司推出了VisualC++.NET(VisualC++7.0),但它的应用的很大的局限性,只适用于Windows2000,WindowsXP和WindowsNT4.0。
所以实际中,更多的是以VisualC++6.0为平台。
VisualC++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrateddevelopmentenvironment,IDE)。
VisualC++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导ClassWizard等开发工具。
3.21VC6.0语言的基本特点及VC程序应用的基本特点
1.自动完成语句功能在用户编辑代码时,编辑器根据光标当前位置判断作用的类或对象,在一个下拉列表中显示相应的内容,方便用户的使用。
2.快速宏录制用户可以将集成开发环境中的特定的连续造作定义为宏,在需要再次使用类似操作的时候只需调用自己录制好的宏就可以了。
3.支持IE5新控件的资源编辑器在资源编辑器中可以方便的将这些新控件添加到工具栏或对话框中。
4.向导方面的改进除了选择DAO和ODBC外,现在还可以选择OLEDB,这可通过使用MFC提供的OLEDB模板实现,可以支持静态链接库,控制台应用程序,也为许多非MFC程序项目提供了向导支持。
5.最快的编辑器,最为领先的数据库技术,是为32位操作系统开发应用程序一片用的编程工具,功能强大,界面友好,操作方便。
3.22为何选择VC6.0作为开发语言
除了VC之外,当前能够编制windows应用程序的可视化编程工具还有很多,所针对的编程领域也各有侧重,就微软系列的可视化开发工具而言,就有visualj++,visualfoxpro等,其中visualfoxpro是针对数据库编程的开发工具,VB不支持虚类、多态性和类的继承。
VisualC++是为专业程序设计员提供的开发工具,变量声明和定义严密,功能强大灵活。
除了微软之外,其他公司也在为windows操作系统平台制作应用程序开发工具,例如前borland的公司出品的delphi,c++bulider,j++bulider等,其他一些公司出品的针对数据库编程的powerbulider,powerdesigner等,不可否认,这些产品相当出色,如果能够熟练掌握将是编程者能力的体现,但是必须承认,对windows操作系统最熟悉的还是微软,而且微软本身windows操作系统的源代码采取不公开的策略,使得其他公司出品的产品在实现相同功能时多少都要走些弯路,用户在使用这些产品设计应用程序时,程序的效率将会受到影响。
在选择所需要的应用程序开发工具时,不但要考虑开发工具的功能是否强大,还要考虑所花费的时间和效果,单纯地追求功能的强大,也许会事倍功半。
所以我选择VC作为开发语言
四.详细设计
4.1通讯录信息输入模块:
概述:
主要使用while循环完成对通讯录的原始数据录入。
包括ID号,姓名,工作单位,办公电话,家庭电话等。
最终将录入数据保存在数组里。
完成总体输入后,按CTRL+Z结束循环。
代码:
intenter(ADDRESSadr[]){
cntAddr=0;
printf("
请按次序输入数据,结束按CTRL+Z:
\n"
);
while
(1){/*通讯录信息输入*/
请输入学号:
if(scanf("
%d"
&
i)==EOF)break;
adr[cntAddr].ID=i;
请输入姓名:
%s"
in)==EOF)break;
strcpy(adr[cntAddr].name,in);
请输入学院:
strcpy(adr[cntAddr].workPlace,in);
请输入手机号:
strcpy(adr[cntAddr].teleOff,in);
请输入家庭电话:
strcpy(adr[cntAddr].teleHome,in);
++cntAddr;
}
returncntAddr;
};
4.2信息浏览及排序模块:
本模块主要完成对已输入的通讯录信息进行浏览及排序,本程序采用For循环对已有的通讯录信息进行逐个读取按条件排序的方法构成排序函数list(adr,length),display(adr),namesort(adr,length),unitssort(adr,length),再函数调用来完成按照序号,姓名,工作单位等进行查看的工作。
voidshowpaixu(ADDRESSadr[],intlength)
{intchoice;
menu1:
system("
cls"
\n\n\n\n*************************通讯录信息管理系统*************************\n\n"
1.全部显示通讯录信息\n\n"
2.按学号显示通讯录信息\n\n"
3.按姓名排序\n\n"
4.按学院排序\n\n"
0.返回上一级菜单\n\n"
********************************************************************\n"
请选择(0~4)\n"
scanf("
choice);
switch(choice)
{
case1:
list(adr,length);
请按任意键返回...\n"
pause"
break;
/*显示全部记录*/
case2:
display(adr);
/*按学号显示记录*/
case3:
namesort(adr,length);
/*按姓名排序*/
case4:
unitssort(adr,length);
/*按学院排序*/
case0:
return;
4.3通讯录查询模块:
通过用For循环构造查询函数namesearch,unitssearch,officenumbersearch,homenumbersearch等来完成查找功能。
voidchazhao(ADDRESSadr[],intlength)/*通讯录信息查找与排序功能*/
intchoice;
menu2:
1.通过姓名查找\n\n"
2.通过学院查找\n\n"
3.通过手机号查找\n\n"
4.通过家庭电话查找\n\n"
namesearch(adr,length);
/*按姓名查找记录*/
unitssearch(adr,length);
/*按学院查找记录*/
officenumbersearch(adr,length);
/*按手机号查找记录*/
homenumbersearch(adr,length);
/*按家庭电话查找记录*/
gotomenu2;
4.4通讯录的更改:
本模块主要通过编写并调用调用rewrite(),add(),delet()函数对通讯录进行更改,添加,删除记录等操作。
voidbiangeng(ADDRESSadr[],intlength)
menu3:
1.删除记录\n\n"
2.修改记录\n\n"
3.添加记录\n\n"
请选择(0~3)\n"
length=delet(adr,length);
save(adr,length);
getchar();
/*删除记录*/
rewrite(adr,length);
/*修改记录*/
length=add(adr,length);
/*插入记录*/
gotomenu3;
4.5通讯录及文件操作:
通过本模块可以对通讯录进行导入。
打开通讯录数据文件等操作。
主要使用了fp(),fcolse()等函数。
intwenjian(ADDRESSadr[],intlength)/*通讯录及文件操作*/
menu4:
1.导入文件到通讯录\n\n"
2.把当前文件复制到新文件上\n\n"
*************************************************************
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通讯录 管理 系统 毕业设计 详细 报告