ImageVerifierCode 换一换
格式:DOCX , 页数:5 ,大小:18.84KB ,
资源ID:17614363      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17614363.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计报告电子通讯录docWord格式文档下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计报告电子通讯录docWord格式文档下载.docx

1、 使用文本文件保存以往的所有学生信息,添加、删除和排序后应更新 该文本文件。 程序运行后,应有一个简单的操作界面。 如有可能,用字符绘制一个简单 的菜单界面,并随用户输入情况使用不同的颜色和动画进行显示。 本任务主要涉及字符数组、指针、结构体和文件操作的综合运用,字符模 式的简单动画和色彩显示的程序设计与所使用的系统相关,不是标准 C 的内容, 其实现需要参考 MSDN 中的 Platform SDK Documentation 相关资料(见后) 。 三、课程设计应完成的工作 程序运行后,显示一个操作界面,用户可选择“添加、删除、查找、排序 (按学号或按姓名)和列表输出”等功能,用户选择某一功

2、能后,程序或者提 示下一步输入(添加、删除、查找) ,或者输出结果(排序(按学号或按姓名) 、 列表输出) 。 程序对用户的错误输入数据应有一定的考虑,不至于导致错误的运 行结果。 如果程序运行时尚未建立通讯录文件,应先创建,否则在原通讯录文件上 进行相应的操作。 记录或复制各步骤的主要屏幕显示内容作为实验测试数据保留。 四、课程设计进程安排 序号设计各阶段内容地点起止日期 1 熟悉 VC6 环境下 C 程序开发的方法和步骤, 选择设计任务,程序设计资料搜集实 3-508 1.7 2 制定实现算法,设计中等详细度的流程图, 编写框架程序实 3-508 1.8 3 独立编写各模块的具体实现程序,

3、按照流 程图完成完整程序的编写(结合调试)实 3-517 1.9 4 独立完成程序的调试、差错定位和排错, 修改完善程序功能,完成设计任务实 3-508 1.10 5 演示和验收源程序及其可执行程序实 2-214 1.11 6 完成课程设计报告 1.111.13 五、应收集的资料及主要参考文献 C 语言文件操作库函数 Windows98 程序设计从入门到精通“第十五章 利用控制台” MSDN“Platform SDK DocumentationBase ServicesDLL, Processes, and ThreadsCharacter-Mode Applications” MSDN“Pl

4、atform SDK DocumentationBase ServicesWindows System InformationTime” 发出任务书日期 2008 年 1 月 2 日 指导教师签名 计划完成日期 2008 年 1 月 13 日 基层教学单位责任人签章 主管院长签章 摘 要 本设计基于C语言设计平台,在VC6环境下C语言程序的创建、编辑、编译和调试改错等 设计过程,设计了一个简单的电子通讯录。 重点实现了从原有通讯录数据添加、查询、插入、 删除及定格式输入输出。 通过控制台,用户根据操作界面提示,实现对通讯录资料的更改。 通过多维结构体数组获取即使信息,然后以读写文件方式将其回传

5、到用户指定的通讯录文件 上,实现用户数据的读写。 本程序具有简单的C源程序,设计方法合乎C语言结构性设计的要求。 并能实现多功能的 电子通讯录。 此设计综合运用 C 语言的语法知识,将算法和流程图转换成 C 语言程序,实现一个基于 Windows 控制台的应用程序。 关键词C 语言,通讯录,格式化,课程设计 目 录 1 设计任务目的及要求设计任务目的及要求6 1.1设计目的.6 1.2设计要求.6 2 原理与模块介绍原理与模块介绍6 2.1 输出记录模块6 2.2 增添记录模块记录模块6 2.3 插入与删除模块模块6 2.4 查询模块2 2.5 保存退出程序模块2 3 设计方案设计方案2 3.

6、1 软件设计思想2 3.2 设计流程图4 4 实验结果与数据处理实验结果与数据处理7 4.1 测试步骤及实验现象7 5 结论与问题讨论结论与问题讨论12 5.1 完成实验的基本要要求.12 5.2 遇到的问题及解决办法12 5.3 存在的不足及改进思路13 参考文献参考文献14 附录附录 C 语言源程序语言源程序14 1 设计任务目的及要求设计任务目的及要求 1.1 设计目的 设计一个学生电子通讯录,可以进行添加、删除、查找、排序(按学号或按姓名)和列表输 出的完整程序。 1.2 设计要求 1 学生电子通讯录每个学生的信息包括学号 姓名 性别 出生日期 宿舍 电话 Email 2 使用文本文件

7、保存以往的所有学生信息,添加、删除和排序后应更新该文本文件 3程序运行后,应有一个简单的操作界面。 如有可能,用字符绘制一个简单的菜单界面,并随用户输 入情况使用不同的颜色和动画进行显示。 4字符数组、指针、结构体和文件操作的综合运用 5 熟悉 VC6 环境下 C 程序开发的方法和步骤,选择设计任务,程序设计资料搜集 6 制定实现算法,设计中等详细度的流程图,编写框架程序 7 独立编写各模块的具体实现程序,按照流程图完成完整程序的编写(结合调试) 8 独立完成程序的调试、差错定位和排错,修改完善程序功能,完成设计任务 2 原理与模块介绍原理与模块介绍 2.1 输出记录模块 利用文件的录入操作函

8、数及文件指针的使用可完成此操作。 2.2 增添记录模块记录模块 对于电子通讯录这样一张顺序表来说,内容的录入是必不可少的操作。 由于采用的是顺序存 储结构。 这项工作只需要在把输入的信息按顺序放在空的 friends 数组元素中即可。 函数 Data_Input 完成了信息的录入工作。 2.3 插入与删除模块模块 在实际使用中,数据资料输入后,还需要不断的更新和维护操作,最常见的是数据的插入与删 除。 作为顺序表来说,如何在插入与删除数据资料后仍然能保持原有数据之间的关系,是需 要考虑的关键问题。 利用顺序表的所有元素加减移动便可实现此功能。 2.4 查询模块 用名字可查询到有关些名字的记录,

9、查找出相应名字的字符串并嵌套 Data_Show 函数实现此 功能。 2.5 保存退出程序模块 以文件及文件指针操作为主的 void Data_Save实现此功能。 电子通讯录功能如下 Function choose 1.输出记录 2.增加记录 3.删除记录 4.查询记录 5.插入记录 6.保存退出 7.退出程序 上图是电子通讯录的主菜单,利用它,将能够轻松地录入一个同学的电话号码,通讯地址和 出生日期,而且它还提供了检索和删除功能。 还可按学号进行排序,这些都有助于该通讯录 的管理。 电子通讯录是采用线性表作为程序的基本结构的。 3 设计方案设计方案 3.1 软件设计思想 1)、设计思想 用

10、顺序表设计电子通讯录的结构 为了表示较为复杂的数据内容,一般用结构这种数据类型,第一步就是在结构中定义所需要 的各项信息。 一般的通讯录都包括姓名,性别,出生年月,通讯地址和联系电话这几项,而 在这几项中,出生年月又包括年份,月份和日期三项,通讯地址包括邮箱和宿舍二项,我们 把这些联系较为紧密的内容又用单独的结构表示,这样就产生了电子通讯录的基本结构。 struct addr char post_num10; char add40; ; struct birth int year; int month; int day; struct friend1 int number; char name

11、20; char sex; struct birth birth; struct addr addr; char telephone13; friends50; 3.2 设计流程图 程序开始 清屏 打印功能说明列表 调用 switch 函数实现各功能 case 1 输出记录模块 case 4 查询记录模块 case 3 删除记录模块 case 2 增添记录模块 case 5 插入记录模块 case 6 保存退出模块 case 7 退出程序模块 1、输出记录模块 打开文件 输出记录 输出“搜索完毕” 有记录无记录 2、增添记录模块 按顺序输入一条记录 跳出 3、删除记录模块 输出“没有记录”删除

12、选中的记录 没有保存记录有保存记录 跳出 4、查询记录模块 输入要查询的姓名 查找到结果 输出结果 跳出 跳 5、插入记录模块 输入要插入的学号 插入一条记录 跳出 6、保存退出模块 将记录保存到文本文件 退出程序 7、退出程序模块 退出不退出 yn 4 实验结果与数据处理实验结果与数据处理 4.1 测试步骤及实验现象 1)功能 1 及功能 2 的实现,记录的输出及增加记录。 如下图 2)功能 3 及 4 的实现首先用查询功能可查到学号为 1 的记录,用功能 3 将此记录删除后, 再用 4 功能便不可看到些记录。 如下图 3)功能 5 的实现插入学号为“1”的记录,用输出功能可以看见刚刚插入的

13、记录。 如下图 4)功能 6 和功能 7 的实现选择 6 和 7 后程序退出。 如下图 5 结论与问题讨论结论与问题讨论 5.1 完成实验的基本要要求 总的来说设计出一个学生电子通讯录,可以进行添加、删除、查找、排序(按学号)和列表 输出的完整程序。 1 学生电子通讯录每个学生的信息包括学号 姓名 性别 出生日期 宿舍 电话 Email 2 使用文本文件保存以往的所有学生信息,添加、删除和排序后应更新该文本文件 3程序运行后,有一个简单的操作界面。 4字符数组、指针、结构体和文件操作的综合运用 5 熟悉 VC6 环境下 C 程序开发的方法和步骤,选择设计任务,程序设计资料搜集 6 制定实现算法

14、,设计中等详细度的流程图,编写框架程序 7 独立编写各模块的具体实现程序,按照流程图完成完整程序的编写(结合调试) 8 独立完成程序的调试、差错定位和排错,修改完善程序功能,完成设计任务 5.2 遇到的问题及解决办法 1) 、在实际使用中,数据资料输入后,还需要不断的更新和维护操作,最常见的是数据的插入与删除。 作为顺 序表来说,如何在插入与删除数据资料后仍然能保持原有数据之间的关系 解决方法的插入算法如下 printf“ntInsert No“; /*录入插入位置*/ scanf“d“, forji1;jk;j- /*插入位置后的元素顺序后移*/ strcpyfriendsj.name,fr

15、iendsj-1.name; /*交换元素内容*/ friendsj.sexfriendsj1.sex; friendsj.birth.yearfriendsj-1.birth.year; friendsj.birth.monthfriendsj-1.birth.month; friendsj.birth.dayfriendsj-1.birth.day; strcpyfriendsj.addr.post_num,friendsj-1.addr.post_num; strcpyfriendsj.addr.addr,friendsj-1.addr.addr; strcpyfriendsj.tele

16、phone,friendsj-1.telephone; Data_Inputk; /*插入位置上填入待插入元素*/ i; /*总元素个数增 1*/ 删除算法如下 printf“ntDelete No“; /*读入删 除位置*/ scanf“d“, forjk;j include include include include struct addr char post_num10; FILE *fp; int i; void Data_Load int j; long k; fpfopen“friend.txt“,“rt“; /*打开文件 friend.txt*/ iffpNULL fori1

17、;ii printf“nt 搜索完毕n“; break; case 2 whilegetch0x1b break; case 5 printf“nt 插入学号“; scanf“d“, forji1;j strcpyfriendsj.name,friendsj-1.name; friendsj.sexfriendsj-1.sex; strcpyfriendsj.addr.add,friendsj-1.addr.add; i; case 6 Data_Save; exit0; case 7 printf“nt 是否保存y/n“; chgetch; ifch y Data_Save; fclosefp; default printf“请选1-4n“; while1;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1