- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电话簿管理系统课程设计要素
课程设计
电话簿管理系统VER1.0
系 别 : 计算机科学与技术系 专业(班级): 电子信息科学与技术2班 姓名 徐楚奇 学号 51202022022 指导教师: 赵翔 完成日期: 2014年11月7日
目 录
摘要 3
第一章 前言 4
第二章 电话簿管理系统介绍 5
2.1 流程图 5
2.2 程序编写概要 6
第三章 主要功能实现 7
3.1 删除功能设计 7
3.2 添加功能设计 7
第四章 源程序 9
第五章 总结心得 23
致谢 24
参考文献 24
摘要
本次课程设计的题目是个人通讯录管理系统,要求将程序中所输人的联系人姓名、电话、QQ、MSN和地址信息这些数据以文本的方式保存,并且能够对所储存的联系人信息进行显示、查询、修改、删除等功能。
本文通过利用模块化程序设计思想,使用单链表和结构体等编写出的可以实现存储、打印、删除等功能的电话簿管理系统。通过完成这个课程设计让我们熟悉并掌握在c语言中使用结构体、单链表,指针,函数,和模块化设计思想。
关键词 结构体,链表,指针,函数
第一章 前言
在前面我们学习了c语言的一些基础知识对c语言有了初步的认识和了解,为了让我们更加全面地了解c语言程序设计的步骤和方法,在老师的指导下 我们进行了一次综合实训。设计一个简单的电话簿管理系统,可以存储,删除等电话号码。为了方便使用DEV-C++来编写程序,可以添加汉字备注方便理解程序。根据前面所学的单链表、指针、函数、结构体等知识在使用模块化设计思想去编写。设计“通讯录管理系统”使其具有数据插入、修改、删除、显示和查询等功能。使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
其功能包括以下各项:
1)数据包括:人名、电话号码。
2)可对记录中的姓名和电话号码进行修改。
3)可增加或删除记录。
4)可显示所有保存的记录。
第二章 电话簿管理系统介绍
2.1 流程图
电话簿管理系统因具备以下功能有流程图表示,如下图2.10
图2.10
2.2程序编写概要
1 主函数 main()
主函数使用户进入电话簿管理系统主界面——用户选择界面,用户可以选择要使用的功能并选择相应的选项进入该功能。使用printf函数和switch case结构来编写主函数。
2 creat()函数
creat函数用来建立新的电话号码簿,用户可以通过它来向系统输入数据。为下面的操作提供数据。
3 delete函数
delete函数用来删除不需要的数据,可以用单链表来实现,并要记住用free函数来释放被删除链表的空间,避免浪费空间。
4 save函数
当需要保存已输入的数据时就需要用到save函数,该函数可以将数据存储到指定的地方为以后使用。
5 load函数
顾名思义load函数是将所存的数据从文件所在位置读取出来以便做打印等处理。
6 search函数
当存入很多文件时候,再用普通的方法打印输出所有数据再查找文件中的目标文件就会很麻烦,这时你需要从已存文件中快速找出你所想要的用户的电话号码就要选择此功能,他可以快速找出你所输入用户名的电话号码,简单方便。
7 append函数
Append函数用来像已有的文件中添加新的电话号码文件。
8 modify函数
在你无意中或心急的时候很有可能将数据输入错误,所以你还需要具有修改数据的功能,将错误的数据重新输入在进行保存工作,确保数据的正确性,modify函数具有该功能。
主要功能实现
3.1 删除功能设计
单链表中的元素是可以删除的,要想删除指定的元素逻辑上是把它从单链表中分离出来,并调用free函数释放其储存空间。
算法如下:
删除链表中的第i个结点,就是要让其前驱的指针绕过该结点,指向该结点的后续结点。假设指针P已经指向链表中的第i-1个结点,如图3.10所示。则删除a[i]结点最基本的操作可以用一条语句实现:p-next=p-next-next。
head p
…
图3.10
这样操作会浪费掉所有删除的结点空间。如果被删除的结点不再使用了,则释放其存储空间,因此需要按如下方式实现:
temp=p-next;
p-next=temp-next;
free(temp);
您可能关注的文档
- 电脑的选购与组装ppt要素.ppt
- 电网通信专业施工作业指导书要素.doc
- 电荷及其相互作用要素.ppt
- 电脑组装教程要素.ppt
- 电视摄像技术(专业课)要素.doc
- 电视显示技术的现状与发展要素.doc
- 电脑硬件原理基础知识要素.ppt
- 电视解说词要素.ppt
- 电表的改装与校正要素.ppt
- 电解原理2(修整后)要素.ppt
- 深度解析(2026)《SNT 2497.23-2010 进出口危险化学品安全试验方法 第 23 部分:细胞器的分离实验方法》.pptx
- 深度解析(2026)《SNT 2517-2010 进境羽毛羽绒检疫操作规程》.pptx
- 深度解析(2026)《SNT 2755.2-2011 出口工业产品企业分类管理 第 2 部分:企业分类基本要求》.pptx
- 深度解析(2026)《SNT 2782-2011 原油中盐含量的测定 电测法》.pptx
- 深度解析(2026)《SNT 3016-2011 石脑油中汞含量测定 冷原子吸收光谱法》.pptx
- 深度解析(2026)《ISOTS 19567-12016 Photography — Digital cameras — Texture reproduction measurements — Part 1 Freque标准解读.pptx
- 深度解析(2026)《SNT 3082.5-2012 出口烟花爆竹产品检验规范 第 5 部分:喷花类》.pptx
- 深度解析(2026)《SNT 3086-2012 出境活鳗现场检疫监管规程》.pptx
- 深度解析(2026)《ISOTR 173022015 Nanotechnologies — Framework for identifying vocabulary development for nanotechnol标准解读.pptx
- 深度解析(2026)《SNT 2982-2011 牙鲆弹状病毒病检疫技术规范》.pptx
最近下载
- TCCSAS 061-2025 特殊作业监护人履责管理要求.pdf
- 《城市轨道交通概论》课件——第六章 城市轨道交通信号与通信系统.pptx VIP
- 2025年国家开放大学(电大)《社会调查研究方法》期末考试复习试题及答案解析.docx VIP
- 2025年公务员多省联考《申论》题(海南B卷).pdf VIP
- 高考物理二、三轮复习总攻略-1专题4.3 板块模型(原卷版).pdf VIP
- 2025年特许金融分析师气候风险衍生品概述与应用专题试卷及解析.pdf VIP
- 手机软件使用步骤.doc VIP
- 全自动膏霜封尾装盒机操作保养规程.docx VIP
- 胰岛素笔注射规范操作指南.pptx VIP
- 工业和信息化部等四部门印发《中小企业划型标准规定》.docx VIP
原创力文档


文档评论(0)