c++课程设计通讯录
- 格式:doc
- 大小:61.00 KB
- 文档页数:19
c 通讯录课程设计一、教学目标本课程旨在让学生掌握通讯录的基本知识和技能,能够使用常见的通讯录软件进行个人信息管理。
通过本课程的学习,学生将能够:1.理解通讯录的基本概念和结构;2.熟练使用通讯录软件进行联系人信息的添加、删除、修改和查询;3.掌握通讯录软件的高级功能,如分组、设置提醒等;4.培养学生的信息管理和能力,提高日常生活和工作中的通讯效率。
二、教学内容本课程的教学内容主要包括以下几个部分:1.通讯录的基本概念和结构:介绍通讯录的定义、分类和常见的通讯录软件;2.通讯录软件的基本操作:讲解如何使用通讯录软件进行联系人信息的添加、删除、修改和查询;3.通讯录软件的高级功能:介绍如何使用通讯录软件进行分组、设置提醒等高级功能;4.实际操作练习:安排一定的实践时间,让学生实际操作,巩固所学知识。
三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学:1.讲授法:讲解通讯录的基本概念、结构和软件操作方法;2.案例分析法:通过分析实际案例,让学生学会如何使用通讯录软件解决实际问题;3.讨论法:学生进行小组讨论,分享使用通讯录软件的心得和技巧;4.实验法:安排实际操作练习,让学生动手实践,提高操作能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的通讯录教材,为学生提供系统的理论知识;2.参考书:提供相关的参考书籍,丰富学生的知识视野;3.多媒体资料:制作课件、视频等多媒体资料,增强课堂教学的趣味性和生动性;4.实验设备:准备电脑、通讯录软件等实验设备,确保学生能够进行实际操作练习。
五、教学评估本课程的评估方式将包括以下几个方面:1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,占比20%;2.作业:评估学生完成作业的质量和速度,占比30%;3.考试:安排一次期末考试,评估学生对课程知识的掌握程度,占比50%。
六、教学安排本课程的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保每个章节都有足够的教学时间;2.教学时间:每周安排两节课,每节课45分钟,共16周;3.教学地点:教室。
通讯录c 课程设计一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握通讯录的基本概念和常用功能;技能目标要求学生能够熟练使用通讯录进行个人信息管理、联系人添加、删除和查找等操作;情感态度价值观目标要求学生培养良好的信息素养,安全意识,尊重他人隐私。
通过分析课程性质、学生特点和教学要求,明确课程目标,将目标分解为具体的学习成果,以便后续的教学设计和评估。
二、教学内容根据课程目标,选择和教学内容,确保内容的科学性和系统性。
本课程的教学内容主要包括以下几个部分:1.通讯录的基本概念:介绍通讯录的定义、功能和应用场景。
2.通讯录的使用方法:讲解如何使用通讯录进行个人信息管理、联系人添加、删除和查找等操作。
3.通讯录的高级功能:介绍通讯录的高级功能,如分组、设置联系人标签、添加备注等。
4.通讯录的安全与隐私:讲解如何保护通讯录中的个人信息安全,尊重他人隐私。
制定详细的教学大纲,明确教学内容的安排和进度,指出教材的章节和列举内容。
三、教学方法选择合适的教学方法,如讲授法、讨论法、案例分析法、实验法等。
通过教学方法应多样化,以激发学生的学习兴趣和主动性。
1.讲授法:用于讲解通讯录的基本概念、使用方法和高级功能。
2.讨论法:用于探讨通讯录的使用场景、安全与隐私问题。
3.案例分析法:通过分析实际案例,让学生掌握通讯录的应用技巧。
4.实验法:让学生动手实践,熟练掌握通讯录的操作。
四、教学资源选择和准备适当的教学资源,包括教材、参考书、多媒体资料、实验设备等。
教学资源应该能够支持教学内容和教学方法的实施,丰富学生的学习体验。
1.教材:选用权威、实用的通讯录教材作为主要教学资源。
2.参考书:提供相关的参考书籍,拓展学生的知识视野。
3.多媒体资料:制作PPT、视频等多媒体资料,增强课堂教学的趣味性。
4.实验设备:准备智能手机、平板等设备,让学生进行实践操作。
五、教学评估本课程的教学评估方式包括平时表现、作业和考试等。
c 通讯录课程设计一、课程目标知识目标:1. 理解通讯录的基本概念,掌握电子通讯录的组成和功能。
2. 学会使用电子表格软件(如Microsoft Excel)创建、编辑和管理通讯录。
3. 掌握利用电子通讯录进行信息检索、排序和筛选的基本方法。
技能目标:1. 能够运用电子表格软件,自主设计并制作一份格式规范、信息准确的通讯录。
2. 培养学生运用电子通讯录进行信息整理和快速查找的能力,提高数据处理效率。
3. 培养学生合作交流、分享信息的能力,提高团队协作意识。
情感态度价值观目标:1. 培养学生尊重他人隐私,合法使用通讯录信息的意识。
2. 激发学生对信息技术课程的兴趣,提高学习积极性。
3. 培养学生勇于尝试、乐于探究的学习态度,增强自信心。
课程性质:本课程为信息技术课程,结合实际生活,教授学生如何使用电子通讯录,提高信息处理能力。
学生特点:学生具备基本的计算机操作能力,对新鲜事物充满好奇心,但需引导培养良好的信息素养。
教学要求:注重实践操作,鼓励学生自主探究,关注学生个体差异,因材施教。
将课程目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 通讯录基本概念:介绍通讯录的定义、分类及其在日常生活中的应用。
2. 电子通讯录制作:a. 熟悉电子表格软件(以Microsoft Excel为例)的操作界面。
b. 学习如何创建新的工作簿,设置工作表标签。
c. 掌握单元格的选取、编辑和格式化。
d. 引导学生设计通讯录表格框架,包括姓名、电话、邮箱等基本信息。
3. 数据录入与编辑:a. 教授数据录入的方法,如填充柄、拖拽等。
b. 学习如何修改和删除数据,掌握撤销和恢复操作。
c. 引导学生学会检查数据的准确性,避免错误和遗漏。
4. 数据管理与查询:a. 掌握排序、筛选和查找功能,快速检索通讯录信息。
b. 学习使用公式和函数进行数据分析,如求和、平均值等。
c. 引导学生运用条件格式对通讯录进行个性化设置。
通讯录系统c 课程设计一、课程目标知识目标:1. 学生能理解通讯录系统的基本概念,掌握其功能结构和设计原理。
2. 学生能掌握运用编程语言(如C语言)实现通讯录系统的基本功能,如添加、删除、查找和修改联系人信息。
3. 学生了解数据结构在通讯录系统中的应用,如链表、结构体等。
技能目标:1. 学生能运用所学知识,独立完成一个简单的通讯录系统设计与实现。
2. 学生通过实践操作,提高编程能力和解决问题的能力。
3. 学生能够运用调试工具进行程序调试,找出并修复程序中的错误。
情感态度价值观目标:1. 学生通过课程学习,培养对计算机编程的兴趣和热情。
2. 学生在学习过程中,养成合作、分享、探究的良好学习习惯。
3. 学生能够认识到编程在生活中的应用价值,激发其进一步学习的动力。
分析课程性质、学生特点和教学要求:本课程为计算机编程课程,以C语言为载体,结合实际生活中的通讯录系统,让学生在实践中掌握编程知识。
学生处于高年级阶段,已具备一定的编程基础,求知欲强,喜欢挑战性任务。
教学要求注重培养学生的动手能力和实际应用能力,将理论知识与实际操作相结合,提高学生的综合素养。
将目标分解为具体的学习成果:1. 学生能够自主设计并实现一个简单的通讯录系统,包括基本功能模块。
2. 学生能够运用所学知识解决实际编程问题,如优化程序性能、修复程序错误等。
3. 学生在学习过程中,能够积极与同学交流合作,分享学习心得和经验。
4. 学生能够通过课程学习,提高自己的编程水平和实际应用能力,为后续学习奠定基础。
二、教学内容1. 通讯录系统基本概念:介绍通讯录系统的定义、功能、应用场景等,使学生对其有一个全面的了解。
2. C语言基础知识回顾:回顾结构体、指针、函数等C语言基础知识,为后续编程打下基础。
3. 数据结构:讲解链表、结构体等数据结构在通讯录系统中的应用,使学生掌握如何利用数据结构组织数据。
4. 编程实现通讯录功能:详细讲解如何用C语言实现通讯录的添加、删除、查找和修改联系人信息等功能,让学生动手实践。
c语言课程设计通讯录一、课程目标知识目标:1. 理解并掌握C语言中的结构体概念,能够运用结构体创建复杂数据类型;2. 学会使用数组存储结构体数据,实现结构体数组的操作;3. 掌握文件操作的基本方法,实现对通讯录数据的读写和存储。
技能目标:1. 能够编写C程序,设计并实现一个基本的通讯录管理系统;2. 能够运用选择、循环等基本控制结构实现对通讯录的有效管理;3. 能够对程序进行调试和优化,提高代码的执行效率。
情感态度价值观目标:1. 培养学生的编程兴趣,激发他们主动探索问题的积极性;2. 培养学生团队协作意识,提高沟通与协作能力;3. 引导学生认识到编程在生活中的实际应用,增强学以致用的意识。
课程性质分析:本课程为C语言课程设计,旨在通过设计一个通讯录管理系统,让学生将所学C语言知识应用于实际项目中,提高编程实践能力。
学生特点分析:学生已具备基本的C语言知识,熟悉语法和基本控制结构,但可能缺乏实际项目经验,对复杂数据类型和文件操作尚需加强。
教学要求:1. 注重理论与实践相结合,引导学生通过实际操作掌握知识;2. 鼓励学生相互讨论、协作,培养解决问题和团队协作能力;3. 强化代码规范,提高代码质量和可读性。
二、教学内容1. 结构体和结构体数组:- 介绍结构体的定义和使用;- 通过通讯录管理系统的需求,设计联系人结构体;- 引导学生运用结构体数组存储和管理联系人信息。
2. 文件操作:- 讲解文件的基本概念和文件操作函数;- 结合通讯录管理系统,实现数据的读写和存储。
3. 通讯录功能实现:- 添加联系人:实现输入、存储联系人信息的功能;- 删除联系人:实现根据条件删除指定联系人的功能;- 查找联系人:实现根据关键字查找联系人的功能;- 显示所有联系人:实现显示通讯录中所有联系人的功能。
4. 程序调试与优化:- 分析程序可能出现的错误和异常;- 引导学生掌握调试方法,优化代码执行效率。
教材章节关联:本教学内容与教材中关于结构体、数组、文件操作等章节密切相关。
c 课程设计作业通讯录一、教学目标本课程的教学目标是使学生掌握通讯录的基本知识,包括通讯录的格式、编排方法和使用技巧。
知识目标要求学生能够理解通讯录的概念,熟悉通讯录的各个部分及其作用,掌握编排通讯录的基本方法。
技能目标要求学生能够独立编排一个完整的通讯录,熟练使用通讯录软件进行编辑和管理。
情感态度价值观目标要求学生培养对通讯录的重视程度,认识到通讯录在日常生活和工作中的重要性,养成良好的通讯录使用习惯。
二、教学内容本课程的教学内容主要包括通讯录的基本概念、编排方法和使用技巧。
具体包括以下内容:1.通讯录的基本概念:介绍通讯录的定义、作用和分类,使学生理解通讯录的重要性。
2.编排方法:教授通讯录的编排原则、格式和步骤,引导学生掌握编排通讯录的技能。
3.使用技巧:介绍通讯录的使用方法、注意事项和快捷操作,帮助学生提高通讯录的使用效率。
三、教学方法为了达到本课程的教学目标,将采用以下教学方法:1.讲授法:通过讲解通讯录的基本概念、编排方法和使用技巧,使学生掌握相关知识。
2.案例分析法:分析实际案例,让学生了解通讯录在日常生活和工作中的应用,提高学生的学习兴趣。
3.实验法:安排实际操作环节,让学生亲自动手编排通讯录,巩固所学知识,提高实际操作能力。
四、教学资源为了支持本课程的教学内容和教学方法的实施,将准备以下教学资源:1.教材:选用内容丰富、结构清晰的通讯录教材,为学生提供系统性的学习资料。
2.参考书:提供相关参考书籍,拓展学生的知识视野。
3.多媒体资料:制作课件、演示文稿等多媒体资料,以图文并茂的形式展示教学内容,提高学生的学习兴趣。
4.实验设备:准备足够的计算机设备,让学生进行实际操作练习。
五、教学评估本课程的评估方式将采用多元化的形式,以全面、客观、公正地评价学生的学习成果。
评估方式包括:1.平时表现:观察学生在课堂上的参与度、提问回答、小组讨论等,记录学生的表现,作为评估的一部分。
2.作业:布置定期的作业,要求学生独立完成,通过作业的质量和进度评估学生的学习情况。
通讯录c 课程设计一、课程目标知识目标:1. 让学生掌握通讯录的基本概念,了解其在信息技术中的应用。
2. 学会使用电子表格软件创建、编辑和保存通讯录。
3. 掌握对通讯录进行排序、筛选和查找等操作的方法。
技能目标:1. 培养学生运用电子表格软件处理数据的能力,提高信息处理效率。
2. 培养学生独立解决实际问题的能力,如运用通讯录进行联系人管理。
情感态度价值观目标:1. 培养学生热爱信息技术,认识到其在生活中的重要性。
2. 培养学生的团队协作意识,学会在小组合作中分享与交流。
3. 增强学生的信息意识,培养其尊重和保护个人隐私的观念。
课程性质:本课程为信息技术课程,旨在让学生掌握通讯录的基本操作,提高信息处理能力。
学生特点:学生为六年级学生,具备一定的信息技术基础,对电子表格软件有一定了解。
教学要求:1. 结合学生实际,注重实践操作,让学生在实际操作中掌握知识。
2. 注重培养学生的团队协作能力,提高课堂互动性。
3. 教学过程中关注学生的个体差异,提供个性化指导,确保每位学生都能达到课程目标。
二、教学内容1. 通讯录概念介绍:介绍通讯录的定义、作用及其在信息技术中的应用场景。
教材章节:第一章第二节2. 电子表格软件操作:指导学生使用电子表格软件(如Microsoft Excel或WPS表格)进行通讯录的创建、编辑和保存。
教材章节:第二章3. 通讯录排序与筛选:教授学生对通讯录进行排序、筛选和查找等操作的方法,以便快速检索联系人信息。
教材章节:第三章4. 高级应用技巧:介绍如何利用公式、函数进行通讯录数据的计算和汇总,如统计联系人数量、分组等。
教材章节:第四章5. 课堂实践:组织学生进行实际操作,巩固所学知识,提高实际应用能力。
教材章节:第五章6. 小组合作与分享:安排学生以小组形式完成通讯录制作任务,培养团队协作意识,分享操作技巧和经验。
教材章节:第六章教学内容安排与进度:第一课时:通讯录概念介绍,电子表格软件操作基础第二课时:通讯录创建、编辑和保存,排序与筛选操作第三课时:高级应用技巧,课堂实践第四课时:小组合作与分享,总结与反馈确保教学内容科学性和系统性,结合教材章节和教学实际,注重理论与实践相结合,使学生在掌握知识的同时,提高实际操作能力。
c 课程设计 通讯录一、课程目标知识目标:1. 学生能理解通讯录的基本概念,掌握其组成元素,如姓名、电话号码、地址等。
2. 学生能掌握在特定电子设备或应用中创建、编辑和存储通讯录的步骤。
3. 学生了解通讯录在生活中的重要性,认识到它对个人信息管理的价值。
技能目标:1. 学生能够独立在电子设备上新建通讯录,输入和修改联系人信息。
2. 学生能够利用排序和搜索功能,快速找到通讯录中的联系人。
3. 学生能够理解并使用分类、标签等功能,对通讯录进行有效的整理和优化。
情感态度价值观目标:1. 学生培养良好的信息管理习惯,认识到个人信息保护的重要性。
2. 学生在小组合作中,学会分享和交流,增强团队协作意识。
3. 学生通过学习通讯录的使用,认识到科技在生活中的应用,激发学习兴趣和探索精神。
课程性质:本课程为实践操作课程,结合生活实际,以培养学生的实际操作能力为主。
学生特点:四年级学生已具备一定的信息素养,对电子设备有较高的兴趣,但实际操作能力还需加强。
教学要求:教师应结合学生特点,采用讲解与实操相结合的教学方法,关注学生个体差异,确保每个学生都能掌握通讯录的基本操作。
在教学过程中,注重引导学生培养良好的信息管理习惯,提升学生的团队协作能力。
通过课程评估,确保学生达到预定的学习目标。
二、教学内容1. 通讯录的定义与作用- 介绍通讯录的基本概念- 讲解通讯录在生活中的重要性2. 通讯录的基本组成- 姓名、电话号码、地址等个人信息- 分类、标签、排序等管理功能3. 通讯录的创建与编辑- 在电子设备上新建通讯录- 添加、修改和删除联系人信息4. 通讯录的存储与管理- 保存和备份通讯录- 搜索和筛选联系人5. 通讯录的实用技巧- 设置头像、铃声等个性化选项- 使用共享和导出功能6. 信息安全与隐私保护- 讲解信息安全的基本知识- 强调保护个人隐私的重要性7. 小组合作与分享- 以小组为单位,共同创建一个班级通讯录- 分享创建过程中的经验和心得教学内容根据课本章节进行安排,结合课程目标,确保学生掌握通讯录的相关知识和操作技能。
c语言课程设计通讯录一、教学目标本课程的教学目标是使学生掌握C语言的基本语法和编程技巧,通过编写程序实现简单的通讯录管理系统。
知识目标包括:了解C语言的基本数据类型、运算符、控制结构、函数等基本概念;掌握结构体和指针的使用方法;理解面向对象编程的基本思想。
技能目标包括:能够使用C语言编写简单的程序;能够使用结构体和指针实现数据的有效管理;能够运用面向对象编程思想解决实际问题。
情感态度价值观目标包括:培养学生的编程兴趣和自信心;培养学生的问题解决能力和创新精神;培养学生团队合作和自主学习的意识。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、函数、面向对象编程等内容。
具体安排如下:1.C语言基本语法:介绍C语言的基本数据类型、运算符、控制结构等,通过编写简单的程序让学生熟悉C语言的编程环境。
2.数据结构:讲解结构体的使用方法,引导学生掌握如何使用结构体来表示通讯录中的信息。
3.函数:介绍函数的定义和调用方法,让学生学会如何编写和使用函数来实现特定的功能。
4.面向对象编程:讲解面向对象编程的基本思想,引导学生掌握如何使用类和对象来实现通讯录管理系统。
三、教学方法本课程采用讲授法、讨论法、案例分析法、实验法等多种教学方法。
通过讲授法,为学生提供系统的知识框架;通过讨论法,激发学生的思考和讨论,培养学生的问题解决能力;通过案例分析法,让学生了解实际应用中的问题解决方法;通过实验法,培养学生的动手能力和创新精神。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料、实验设备等。
教材选用《C程序设计语言》作为主教材,参考书选用《C Primer Plus》等;多媒体资料包括教学PPT、视频等;实验设备包括计算机、网络等。
教学资源的选择和准备旨在支持教学内容和教学方法的实施,丰富学生的学习体验。
五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分。
平时表现主要评估学生的课堂参与度、提问回答、团队协作等情况,通过观察和记录来评价学生的学习态度和积极性。
c 手机通讯录课程设计一、课程目标知识目标:1. 学生能理解手机通讯录的基本概念,掌握其功能与操作流程。
2. 学生能学会在手机通讯录中添加、删除、修改和查找联系人等基本操作。
3. 学生能了解手机通讯录的存储方式及其安全性。
技能目标:1. 学生能熟练运用手机通讯录进行联系人管理,提高生活与学习效率。
2. 学生能通过手机通讯录培养信息整理、分类与查找的能力。
3. 学生能运用所学知识解决实际生活中与通讯录相关的简单问题。
情感态度价值观目标:1. 培养学生积极学习新知识的态度,激发对信息科技的兴趣。
2. 培养学生团队协作意识,学会分享与互助,共同解决问题。
3. 增强学生的信息安全意识,尊重他人隐私,养成良好的信息素养。
本课程针对年级学生的特点,结合手机通讯录的实用功能,以实际操作为主线,注重培养学生的动手能力和解决问题的能力。
课程目标具体、可衡量,旨在让学生在掌握基本知识的同时,提高生活品质和综合素质。
在教学过程中,教师需关注学生的个体差异,因材施教,确保每个学生都能达到预期的学习成果。
二、教学内容本章节教学内容主要包括以下几部分:1. 手机通讯录基本概念:介绍手机通讯录的定义、功能及其在生活中的应用。
2. 手机通讯录操作流程:- 添加联系人:学习如何在手机通讯录中新建联系人,并填写相关信息。
- 修改和删除联系人:掌握如何对已有联系人进行编辑和删除操作。
- 查找联系人:学习使用搜索功能快速查找联系人。
3. 手机通讯录存储方式与安全性:- 存储方式:介绍手机通讯录的存储形式,如SIM卡、手机内存等。
- 安全性:讲解如何保护通讯录信息安全,预防信息泄露。
4. 实践操作与案例分析:- 实践操作:安排学生进行实际操作,巩固所学知识。
- 案例分析:通过案例讲解,让学生了解通讯录在实际生活中的应用。
教学内容依据课程目标制定,与课本内容紧密关联。
教学大纲明确教学内容安排和进度,具体如下:1. 第1课时:手机通讯录基本概念及操作流程介绍。
2.通讯录管理问题描述编写一个简单的通讯录管理程序。
通讯录记录有姓名,地址(省、市(县)、街道),电话号码,邮政编码等四项。
基本要求程序应提供的基本管理功能有:1)添加:即增加一个人的记录到通信录中2)显示:即在屏幕上显示所有通信录中的人员信息,应能分屏显示。
3)存储:即将通讯录信息保存在一个文件中。
4)装入:即将文件中的信息读入程序。
5)查询:可根据姓名查找某人的相关信息,若找到显示其姓名、地址、电话号码和邮政编码。
6)修改:可修改一个人的除姓名外其它信息。
测试数据程序应输入不少于10个人员的通讯录信息,应考虑到人员可以同名的情况。
实现提示程序可用一个单向链表来管理人员信息,每个人员的姓名,地址,电话号码和邮政编码用一个类Cperson来实现,作为链表的值指针指向这些Cperson类对象,通过链表的遍历可以操作这些数据。
选做内容为了加快数据定位查找的速度,采用常用优先的方法对链表的各个节点进行排序,即一旦操作了一个人员的数据,他的数据就将被调用到链表的链首。
这样经过有限次操作,经常查阅的人员的信息就将排在链表的前端。
虽然不能说链首的节点一定是最常用的,但常用的节点一定会排在较靠前的部分,链表查找时所要走的平均距离一定较短。
代码部分#include<iostream>#include<conio.h> //在程序中getch()函数需要用到这个头文件#include<fstream> //c++文件流头文件#include<windows.h> //这个头文件中包含COORD等类型using namespace std;void menu(int &N); //主菜单函数void chaxun(int &N,char n[100]); //查询联系人的函数void tianjia(int &N); //添加联系人的函数,用引用做形参void xianshi(int &N); //显示全部联系人的函数void xiugai(int &N); //修改联系人的信息的函数void gotoxy(int x,int y) //设置光标位置的函数{COORD c;c.X=x-1;c.Y=y-1;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c); }class people //为通讯录编写一个类{char* name; //通讯录中联系人的名字char* bianma; //联系人的邮政编码char* address; //联系人的地址char* phone; //联系人的电话public:// people(char n[],char b[],char a[],char p[]); //联系人类中的构造函数void set(char n[],char b[],char a[],char p[]); //联系人类中的设置函数void print(); //输出联系人的所有信息char* getname(); //返回联系人的姓名char* getbianma(); //返回联系人的邮政编码char* getaddress(); //返回联系人的地址char* getphone(); //返回联系人的电话};/**********************************类中函数的实现*******************************/char* people::getname(){return name;}char* people::getbianma(){return bianma;}char* people::getaddress(){return address;}char* people::getphone(){return phone;}void people::set(char n[],char b[],char a[],char p[]) //联系人类中的设置函数的实现{name=new char[];bianma=new char[];address=new char[];phone=new char[];strcpy(name,n);strcpy(bianma,b);strcpy(address,a);strcpy(phone,p);}void people::print(){cout<<" "<<name<<" \t"<<address<<"\t\t"<<phone<<"\t\t"<<bianma<<endl;}/********************************************************** ************************//*********************************功能函数的实现***********************************/void tianjia(int &N) //添加函数的实现{people pp;ofstream f("第二题.txt",ios::app); //fostream为输入流类,输入内容到文件中,ios::app是以追加的方式写入文件char n[100];char a[100];char p[100];char b[100];cout<<endl;cout<<" 添加记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 输入新的联系人的姓名:"<<endl;cout<<" 输入新的联系人的地址:"<<endl;cout<<" 输入新的联系人的电话:"<<endl;cout<<" 输入新的联系人的编码:"<<endl;cout<<" "<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;gotoxy(45,5); //设置光标的函数在第11行有它的实现,下同cin>>n;gotoxy(45,6);cin>>a;gotoxy(45,7);cin>>p;gotoxy(45,8);cin>>b;pp.set(n,a,b,p);f.write((char*)&pp,sizeof(pp));f.close();system("cls");cout<<endl;cout<<" 添加记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" "<<endl;cout<<" "<<endl;cout<<" 添加记录成功"<<endl;cout<<" "<<endl;cout<<" "<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;Sleep(1000); //API函数,功能为延时作用Sleep(1000)表示延时1秒N++;system("cls"); //清屏函数menu(N);}void xianshi(int &N){people pp;fstream f("第二题.txt");cout<<endl;cout<<" 显示全部记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 姓名"<<" \t"<<"地址电话"<<"\t\t"<<"号码"<<"\t\t"<<"邮政编码"<<endl;if(N==0)cout<<"无任何记录"<<endl;elsefor(int i=0;i<N;i++){f.read((char*)&pp,sizeof(pp));pp.print();}cout<<" 按任意键返回"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;getch();system("cls");menu(N);}void chaxun(int &N){int j=0;people pp;char n[100];cout<<endl;cout<<" 查询记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" "<<endl;cout<<""<<endl;cout<<" 输入你想查询的联系人的姓名:"<<endl;cout<<""<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;gotoxy(45,5);cin>>n;system("cls");fstream f("第二题.txt");cout<<endl;cout<<" 显示查询记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 姓名"<<" \t"<<"地址"<<"\t\t"<<"电话号码"<<"\t\t"<<"邮政编码"<<endl;for(int i=0;i<N;i++){f.read((char*)(&pp),sizeof(pp));if(strcmp(n,pp.getname())==0){cout<<" "<<pp.getname()<<" \t"<<pp.getaddress()<<" \t\t"<<pp.getphone()<<" \t\t"<<pp.getbianma()<<endl;j++;}}if(j==0)cout<<" 未找到任何相关记录"<<endl;cout<<""<<endl;cout<<""<<endl;cout<<""<<endl;cout<<" 按任意键返回主菜单"<<endl;cout<<""<<endl;cout<<""<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;getch();system("cls");menu(N);}void xiugai(int &N){int j=0;// const int k=N;people *pp=new people[N];// char n[100];fstream f("第二题.txt");cout<<endl;cout<<" 修改记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 姓名"<<" \t"<<"地址"<<"\t\t"<<"电话号码"<<"\t\t"<<"邮政编码"<<endl;for(int i=0;i<N;i++){f.read((char*)(&pp[i]),sizeof(pp[i]));cout<<i<<"."<<pp[i].getname()<<" \t"<<pp[i].getaddress()<<" \t\t"<<pp[i].getphone()<<" \t\t"<<pp[i].getbianma()<<endl;}cout<<" 你想修改哪条记录"<<endl;cout<<"--------------------------------------------------------------------------------";fstream f1("第二题.txt");int v;for(v=0;v<N;v++)f1.read((char*)(&pp[v]),sizeof(pp[v]));v=getch();int k=v-'0';system("cls");people p1;cout<<endl;cout<<" 修改记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 以下为该记录的原信息"<<endl;cout<<" 姓名:"<<pp[v-'0'].getname()<<endl;cout<<" 地址:"<<pp[v-'0'].getaddress()<<endl;cout<<" 电话号码:"<<pp[v-'0'].getphone()<<endl;cout<<" 邮政编码:"<<pp[v-'0'].getbianma()<<endl;cout<<""<<endl;cout<<" "<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 修改后的联系人的姓名:"<<endl;cout<<" 修改后的联系人的地址:"<<endl;cout<<" 修改后的联系人的电话:"<<endl;cout<<" 修改后的联系人的编码:"<<endl;cout<<" "<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;char n[100];char a[100];char p[100];char b[100];gotoxy(45,14);cin>>n;gotoxy(45,15);cin>>a;gotoxy(45,16);cin>>p;gotoxy(45,17);cin>>b;p1.set(n,a,p,b);f1.close();ofstream f2("第二题.txt");for(v=0;v<N;v++){if(v==k){cout<<k;cout<<v;pp[v]=p1;pp[v].print();f2.write((char*)(&pp[v]),sizeof(pp[v]));}else{f2.write((char*)(&pp[v]),sizeof(pp[v]));}}f2.close();system("cls");cout<<endl;cout<<" 修改记录"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" "<<endl;cout<<" "<<endl;cout<<" "<<endl;cout<<" 修改成功"<<endl;cout<<" 按任意键返回主菜单"<<endl;cout<<endl;cout<<endl;cout<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;getch();system("cls");menu(N);}void menu(int &N){cout<<endl;cout<<" 通讯录主菜单"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<" 1.添加记录"<<endl;cout<<" 2.显示全部"<<endl;cout<<" 3.修改记录"<<endl;cout<<" 4.查询记录"<<endl;cout<<" 5.退出使用"<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;switch(getch()) //getch()函数是用于判断键盘是否按下键,再用switch()判断按下了哪键{case'1':system("cls");tianjia(N);break;case'2':system("cls");xianshi(N);break;case'3':system("cls");xiugai(N);break;case'4':system("cls");chaxun(N);break;case'5':break;}}void main(){ofstream f("第二题.txt");people pp;pp.set("张三","123456","江西","123456789");f.write((char*)&pp,sizeof(pp));f.close();int N=1;menu(N);}。