C语言程序设计基础电子教案 第8章 结构体_第1页
C语言程序设计基础电子教案 第8章 结构体_第2页
C语言程序设计基础电子教案 第8章 结构体_第3页
C语言程序设计基础电子教案 第8章 结构体_第4页
C语言程序设计基础电子教案 第8章 结构体_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

授课课题第8章结构体8.1结构体类型与结构体变量8.1.1-8.1.5结构体类型、结构体变量、结构体数组、结构体指针变量、结构体与函数授课形式理论教学学时2教学目的与要求1.了解什么是结构体类型,为什么要使用结构体类型;2.掌握一维结构体变量的定义和引用;3.熟悉结构体数组进行初始化的方法;4.了解结构体指针变量、结构体在函数中的使用。教学重点和难点重点:结构体数据类型和结构体数组的定义和引用。难点:使用结构体解决实际问题。教学方法与手段1.任务驱动、讲练结合和演示法2.利用多媒体计算机辅助教学教学内容及过程设计教学内容及过程设计教学内容及过程设计一、回顾知识,引入新课(10分钟)1.回顾知识老师提问:目前为止,我们学习过的数据类型有哪些?(学生回答,老师总结)2.呈现任务,导入新课引导:描述一个大学生,有姓名、年龄、专业、学号等多个属性,对“大学生”这个对象,就需要设计一个结构体数据类型,把描述每个属性的变量作为成员,所有的成员变量作为一个整体。思考:用我们之前学习的知识能完成吗?如果更多呢?进而引入新课,结构体的概念,本次课我们来学习结构体的相关知识。二、任务驱动,学习新知(80分钟)任务:定义一个结构体用来存储一个学生的学号、姓名、性别、考试成绩和家庭住址。定义一个学生,并为其赋值,最后输出这个学生的所有信息。程序解析:1.定义结构体类型;2.定义一个结构体变量并为其赋值;3.输出学生信息;展示源程序,并指出其中涉及的新知识点,具体的程序解析放到后面进行。8.1.1结构体类型讲解结构体类型定义的方法、结构体类型的概念、结构体类型在内存的存放方式,什么时候需要定义结构体。提醒:1.struct是定义结构体类型的关键字,结构体名是由程序设计者按C语言标识符命名规则指定的该结构体类型名称,将来要用它作为数据类型标识符去定义结构体变量。2.成员函数表列是可选项3.成员变量表列列出该结构体的成员变量,每个成员变量也必须作类型说明。8.1.2结构体变量1.讲解声明结构体变量的3种方法。强调:(1)定义了结构体类型之后,还要用它声明结构体变量,然后使用结构体变量。(2)3种方法的区别。2.用typedef把数据类型名化繁为简。拓展:typedef的应用主要有如下4种情形。3.结构体变量的使用方法强调:圆点运算符的使用。4.结构体变量的初始化通过示例让学生体会结构体变量初始化的做法。任务:结构体类型嵌套举例。5.结构体变量的输入与输出通过图示展示结构体变量在内存中的存储情况,让学生加深对结构体变量存储状态的理解。提醒:C语言不允许把一个结构体变量作为一个整体进行输入或输出。8.1.3结构体数组1.结构体类型数组的定义强调:定义结构体类型数组的3种方法。(1)先定义结构体类型,再定义结构体数组。(2)定义结构体类型的同时定义结构体数组。(3)直接定义结构体类型数组。2.结构体数组的初始化提醒:对结构体数组中部分元素赋初值时,方括号内的元素个数不能省略,同时,数组其他元素因为没有提供初值,系统按对数值型成员赋以0。3.结构体数组的使用方法讲解结构体数组中元素的访问方法。强调:一个结构体数组的元素就是一个结构体变量,使用结构体数组的元素和使用结构体变量的规则完全相同。8.1.4结构体指针变量讲解结构体指针的概念,一般形式。强调:指向结构体变量的指针和指向结构体数组的指针的用法。8.1.5结构体与函数结合实例讲解结构体变量作为函数参数、结构体指针变量作函数形参以及函数返回值是结构体类型的应用的用法。三、课堂小结,布置作业(10分钟)对本次课针对结构体类型和结构体变量相关知识进行总结,布置作业。最后留几分钟让学生和老师或者同学之间互相讨论,加深对课程内容的理解,及时提出问题、解决问题。作业实验8:结构体板书设计第8章结构体8.1结构体类型与结构体变量8.1.1结构体类型8.1.2结构体变量8.1.3结构体数组8.1.4结构体指针变量8.1.5结构体与函数课后小结

授课课题第8章结构体8.2动态分配存储空间8.3顺序存储与链式存储授课形式理论教学学时2教学目的与要求了解动态分配存储空间的原因和相关概念。掌握实现动态管理存储空间的函数。区分顺序存储和链式存储的存储方式和应用场合。能够使用链表进行元素的增、删、查和改常见操作。教学重点和难点重点:动态管理存储空间的相关用法、链表的常见操作。难点:malloc()函数的使用,链表的常见操作。教学方法与手段1.讲练结合和演示法。2.利用多媒体计算机辅助教学。教学内容及过程设计一、回顾知识,引入新课(10分钟)1.回顾知识老师提问:如何使用同一个数组存放不同班级的学生成绩?(学生回答,老师总结)2.导入新课引导:让系统分配一个长度为400个字节的内存空间并返回这块空间的首地址。思考:用我们之前学习的知识能完成吗?进而引入新课,动态分配内存的概念,本次课我们来学习这部分知识。二、学习新知(70分钟)8.2动态分配存储空间讲解为什么要进行动态分配存储空间以及实现动态管理存储空间的函数。强调:C语言提供了函数实现上述功能,分别是malloc()、calloc()、realloc()和free(),前面3个是有关分配存储空间的函数,而free()是用于释放存储空间的函数。结合实例,重点介绍malloc()函数的使用。案例分析与讲解:【例8.9】malloc()、realloc()、free()的使用示例。8.3顺序存储与链式存储讲解链式存储出现的背景。(1)绘图讲解顺序存储结构结合实例8.10分析和讲解使用顺序存储进行元素插入和删除操作。通过对比,引入链式存储结构。(2)绘图讲解链式存储结构结合实例8.11分析和讲解使用链式存储进行元素插入和删除操作,引领学生体会链式存储的优势。(3)通过综合实例8.12分析和讲解链表的创建、插入、删除、和打印输出等常见操作。三、课堂小结,布置作业(20分钟)对本次课

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论