C语言程序设计(第3版)教学教案教学设计_第1页
C语言程序设计(第3版)教学教案教学设计_第2页
C语言程序设计(第3版)教学教案教学设计_第3页
C语言程序设计(第3版)教学教案教学设计_第4页
C语言程序设计(第3版)教学教案教学设计_第5页
已阅读5页,还剩53页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

C语言程序设计教案章节名称1-VC++软件使用方法、C语言程序特点授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、了解通用计算机和嵌入式计算机的区别2、掌握VC++2010开发环境的使用方法和步骤3、熟悉C语言程序的特点能力目标能使用VC++2010编写、运行和调试C语言程序教学重点1、VC++2010开发环境的使用方法和步骤2、C语言程序的特点教学难点C语言程序的特点教学方法讲授法、启发法、对比法、演示法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站、[MCU实验板]教学设计教学环节内容要点与手段时间分配课程简介首先简介课程地位、学习目标、内容、方法和考核方式;然后明确本次课的学习任务:了解通用计算机和嵌入式计算机的区别;理实一体分析C语言程序的特点。5新课教学1、通用计算机和嵌入式计算机(1)通用计算机和嵌入式计算机的区别(2)以MCU为核心的嵌入式系统组成【结合实例】102、讲解、演示与练习VC++2010的使用方法和步骤(1)打开软件(2)新建项目(3)新建C源文件(.c文件)并添加值已建项目(4)编辑C程序代码,强调书写规范(5)编译(.obj文件)、连接(.exe文件)、运行程序353、程序分析与练习(1)分析程序本节例题,总结C语言程序的特点(2)练习本节例题38课堂小结VC++2010开发C程序的基本步骤;C语言程序的特点1作业布置VC++2010软件安装,强化练习所学的例题程序;完成工作手册对应的练习题;预习下一节17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路通过实物演示和日常应用实例熟悉嵌入式系统的概念和组成;然后引导学生通过上机操作,结合课堂讲解,总结C语言的结构特点。

章节名称2-数据的基本类型及其表现形式(整型)授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、了解C语言的数据类型,熟悉相关的C关键字2、理解常量和变量的概念及区别3、掌握基本类型中的整型数据的表示方法及存储形式能力目标1、能区分常量和变量;2、能根据实际需要,选用合适的数据类型定义变量教学重点1、常量和变量的概念及区别2、整型数据的表示方法及存储形式教学难点整型数据的表示方法及存储形式教学方法讲授法、类比法、启发法、对比法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习:C程序结构特点、VC++开发C程序的4个基本步骤。而在程序设计离不开数据的运算和处理,在程序中对用到的所有数据都必须指定其数据类型。数据有常量和变量之分。本次课学习数据类型的知识。10新课教学一、C数据类型:基本类型、构造类型、指针类型、空类型5二、常量和变量1、常量:1)直接常量;2)符号常量;说明:标识符的含义和书写要求变量:先定义后使用(就像家里的孩子先起名,后喊名)思考:人在成长过程中,哪些量是常量,哪些量是变量?20三、整型数据1、整型常量的表示方法:十进制、八进制、十六进制502、整型变量(1)分类:char、int、shortint、longint;signed、unsigned(2)内存存储形式:0000~1111:二、十、十六进制之间的关系补码:以钟表调整理解补码的概念,引导学生得出负数的补码,并理解不同类型的整型变量对应的数值范围(3)定义及赋值课堂小结C基本数据类型、常量和变量、整型数据的表示方法和存储形式3作业布置1、对照附录熟悉数字、英文字母对应的ASCII值;2、复习本次课内容;完成工作手册对应的练习题;3、预习“字符型数据”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路1、常量与变量:引导学生思考自己在成长过程中的常量和变量;2、变量先定义后使用:相当于家里有个孩子,需要先起名,然后再喊其名;3、学生对二进制、十六进制、十进制之间的关系不是很熟练,课上需要重点引导学生强化记忆;4、通过钟表时间调整,有有效引导学生理解负数的补码概念以及计算方法。章节名称3-数据的基本类型及其表现形式(字符型和实型)授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握字符型数据的表示方法及存储形式2、掌握实型数据的表示方法3、掌握变量定义和赋初值的方法能力目标能根据实际需要,选用合适的数据类型定义变量教学重点1、字符型数据的表示方法及存储形式2、实型数据的表示方法3、变量定义和赋初值的方法教学难点字符型数据的表示方法及存储形式教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入提问:C基本数据类型,常量和变量的区别,整型数据的表示方法及分类,整型变量的定义方法和赋值方法。本次课学习基本类型的其他两种类型:字符型和实型。10新课教学四、字符型数据1、字符常量的表示方法402、字符变量的定义、赋值3、字符型数据的内存存储形式及使用方法【本节例题】4、字符串常量五、实型数据1、实型常量的表示方法:十进制小数形式、指数形式2、实型变量的分类:float、double【例题】25六、变量的初始化10课堂小结字符型数据的内存存储形式及使用方法、实型数据的表示方法、变量的初始化3作业布置复习整型、字符型数据;上机强化练习例题;完成工作手册对应的练习题;预习“运算符及表达式”。27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称4-C运算符及表达式(算术、强制类型转换、赋值)授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握算术运算符(基本、自增自减)及其表达式的应用2、掌握强制类型转换运算符及其表达式的应用3、掌握赋值运算符(简单、复合)及其表达式的应用能力目标根据数据运算的需要,确定数据类型,并用相关的运算符书写表达式教学重点1、算术运算符及其表达式的应用2、强制类型转换运算符及其表达式的应用3、赋值运算符及其表达式的应用教学难点1、运算符的优先级与结合性2、复合赋值运算符及表达式的应用教学方法讲授法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入复习整型、实型、字符型变量的定义及赋值方法;常量或变量进行运算时,需要用到运算符及表达式,简要介绍C语言的运算符种类。5新课教学一、算术运算符及其表达式1、基本的算术运算符及运算规则:+、-、*、/、%【例题】十进制数的各位分离问题(应用举例:数码管显示)202、自增、自减运算符:++、--【例题】自增、自减运算符的应用153、算术表达式和运算符的优先级与结合性5二、强制类型转换运算符及其表达式(类型标识符)(表达式)【例题】强制类型转换运算符的应用15三、赋值运算符及其表达式1、简单赋值运算符及其表达式:变量=表达式272、复合赋值运算符及其表达式3、赋值运算中的类型转换问题【例题】课堂小结算术、强制类型转换、赋值运算符及其表达式,运算符的优先级与结合性2作业布置本节【思考与实验】,上机强化练习例题;完成工作手册对应的练习题;预习下一节17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称5-C运算符及表达式(关系、逻辑、逗号)授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握关系运算符及其表达式掌握逻辑运算符及其表达式3、熟悉逗号运算符及其表达式能力目标根据数据运算的需要,确定数据类型,并用相关的运算符书写表达式教学重点关系运算符及其表达式逻辑运算符及其表达式教学难点关系运算符和逻辑运算符的综合应用教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习基本算术、自增自减、强制类型转换、赋值运算符及其表达式,运算符的优先级和结合性。要根据数据运算的需要,确定数据类型,并用相关的运算符书写表达式。本次课学习关系、逻辑、逗号运算符及其表达式。10新课教学一、关系运算符及其表达式1、关系运算符及其优先级次序(1)<、<=、>、>=;==、!=(2)与其他运算符的优先级次序(举例说明)2、关系表达式的值:1代表真、0代表假25二、逻辑运算符及其表达式1、逻辑运算符及其优先级次序(1)&&、||、!(2)与其他运算符的优先级次序(举例说明)2、逻辑运算量的值:非0代表真、0代表假;逻辑表达式的值:1代表真、0代表假(举例说明)30【思考与练习】分别写出数学表达式“80≤i<89”“i<0或i≥100”“i≠0”对应的C语言表达式三、逗号运算符及其表达式1、逗号表达式的一般形式:表达式1,表达式22、逗号表达式的扩展形式:表达式1,表达式2,…,表达式n20课堂小结关系、逻辑、逗号运算符及其表达式的值3作业布置复习本次课内容;完成工作手册对应的练习题;预习“位运算符及其表达式”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称6-C运算符及表达式(位)授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握位运算符及其表达式的应用能力目标根据数据运算的需要,确定数据类型,并用相关的运算符书写表达式教学重点位运算符及其表达式的综合应用教学难点位运算符及其表达式在嵌入式软件设计中的应用教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习逻辑运算符及其表达式;本次课学习嵌入式软件设计中常用的位运算符及其表达式。5新课教学1、位运算符种类及运算量按位与&、按位或|、按位异或^、按位取反~、左移<<、右移>>5位运算符的运算规则及特殊用途按位与&按位或|按位异或^按位取反~左移<<右移>>上机练习【例题】位运算符的应用503、位运算符的嵌入式应用【例题】利用位运算符实现对寄存器的位操作25课堂小结位运算的运算规则及应用3作业布置完成工作手册对应的练习题;复习本单元内容,完成单元练习题27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称1-C程序设计预备知识、字符输入输出函数授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、熟悉算法及其表示方法2、熟悉三种程序结构及流程图表示3、熟悉C语句及其分类3、掌握字符输入输出函数getchar、putchar的使用方法能力目标能利用数据输入输出函数编写简单的顺序结构程序教学重点1、三种程序结构及流程图表示2、字符输入输出函数getchar、putchar的使用方法教学难点字符输入输出函数getchar、putchar的使用方法教学方法讲授法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入在C语言语法基础上学习第2单元——利用三种程序结构解决简单问题,首先学习必要的预备知识,然后学习3种结构程序的设计方法,最后学习预处理命令的应用方法。首先学习必要的预备知识:算法的概念及其表示方法、三种程序结构及其流程图表示以及C语句。5新课教学一、算法及其表示方法1、算法的概念2、算法的特征3、常用的流程图符号4、三种程序结构及流程图表示方法:顺序、选择、循环35二、C语句分类声明语句、表达式语句、函数调用语句、控制语句、复合语句、空语句5三、字符输入输出函数1、数据输入输出的概念及在C语言中的实现52、字符输出函数putchar【例题】3、字符输入函数getchar【例题】35课堂小结数据输入输出函数putchar、getchar的使用方法3作业布置复习本次课的内容,完成工作手册对应的练习题;预习下一节内容27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称2-格式化数据输入输出函数、顺序结构程序设计授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握格式化数据输入输出函数scanf、printf的使用方法2、掌握顺序结构程序设计方法能力目标能画出顺序结构程序设计算法流程图,并根据流程图进行规范化编程教学重点1、格式化数据输入输出函数scanf、printf的使用方法2、顺序结构程序设计方法及规范化编程教学难点1、scanf函数的使用方法;2、顺序结构程序设计算法流程图表示及规范化编程教学方法讲授法、类比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习数据输入输出函数getchar、putchar的使用方法。本次课接着格式化数据输入输出函数scanf、printf的使用方法,并在此基础上学习顺序结构程序设计方法。5新课教学一、格式化数据输入输出函数1、格式输出函数printf调用形式【例题】2、格式输入函数scanf调用形式【例题】40二、顺序结构程序设计使用输入输出函数进行顺序结构程序设计(1)算法分析(2)设计流程图(3)代码设计(规范编程)40课堂小结格式化数据输入输出函数scanf、printf的使用方法;规范化编程要求3作业布置教材例题、练习题训练;完成工作手册对应的练习题;27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称3-选择结构程序设计(1):if语句授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握if语句的3种形式及应用方法2、掌握条件运算符和条件表达式的应用能力目标能用if语句解决实际的选择问题教学重点1、if语句的3种形式及应用2、条件运算符和条件表达式的应用教学难点1、if语句嵌套形式的应用2、条件运算符和条件表达式的应用教学方法讲授法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课学习了顺序、选择和循环3种程序结构算法流程,并且进行了顺序结构程序设计,现在开始学习选择结构程序设计。选择结构程序中条件的判断,主要由第1单元介绍的关系运算符及其表达式、逻辑运算符及其表达式来实现(简单复习)5新课教学一、if基本形式1、形式:if(表达式)语句2、应用:【例题】用if语句判断25二、if…else基本形式1、形式:if(表达式)语句1else语句22、应用:【例题】用if…else语句判断10三、if…else嵌套形式1、形式和执行流程2、应用:【例题】编程实现符号函数的输出30四、条件运算符和条件表达式1、形式和执行流程2、应用举例:【例题】利用条件运算符求两数的最大值15课堂小结if语句的3种形式,条件运算符和条件表达式3作业布置画出书中第②、③、④种if…else嵌套形式的执行流程图;完成工作手册对应的练习题;预习“if语句应用”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称4-选择结构程序设计(2):if语句的具体应用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握if语句的应用方法能力目标能用if语句解决实际的选择问题教学重点if语句的应用方法教学难点if-else嵌套语句的应用方法教学方法讲授法、启发法、练习法、演示法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站、MCU实验板教学设计教学环节内容要点与手段时间分配复习导入上次课学习了if语句的3种形式,本次课将使用if语句解决实际问题。5新课教学1、【例题】输入两个整数,要求按由大到小的顺序输出202、【拓展与实验】输入3个数,要求由大到小的顺序输出203、【例题】MCU实现多路开关状态指示功能154、【例题】根据输入的课程成绩,判断并输出相应的等级,要求用if-else嵌套形式实现25课堂小结用if语句解决实际问题的思路3作业布置本节例题、思考与实验;完成工作手册对应的练习题;预习下一节内容27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称5-选择结构程序设计(3):switch语句循环结构程序设计(1):while语句授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握switch选择语句及应用方法2、掌握while循环语句及应用方法能力目标1、能用switch语句解决实际的选择问题2、能用while语句解决实际的循环操作问题教学重点1、switch选择语句及应用方法2、while循环语句及应用方法教学难点1、switch语句在选择结构中的应用方法2、while语句在循环结构中的应用方法教学方法讲授法、启发法、对比法、练习法、演示法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站、MCU实验板教学设计教学环节内容要点与手段时间分配复习导入对于处理多分支选择问题时,可采用if…else嵌套形式,还可采用C语言提供的另外一种用于多分支选择的switch语句。3新课教学一、switch语句及应用switch语句的一般形式、执行流程应用:【例题】根据输入的课程成绩,判断并输出相应等级总结:if语句和switch语句的区别4、嵌入式应用案例:【例题】开关状态指示42多种问题需要重复执行同种性质的任务,如反复测试程序、嵌入式智能设备反复运行,这就需要用到循环结构程序设计。C语言中有3种最基本的循环语句:while语句、do-while语句、for语句。二、while循环结构程序设计1、while语句的一般形式及应用:【例题】实现1+2+3+…+100402、拓展实验:1+3+5+…+99;2+4+6+…+100;1+2+3+…+n3、说明:while语句中的表达式、while复合语句while(1)语句的应用:体会循环结构的作用课堂小结switch语句的一般形式及应用方法;while语句的一般形式及应用方法3作业布置例题、思考与实验;完成工作手册对应的练习题;预习下一节27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称6-循环结构程序设计(2):do...while语句和for语句授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握do-while、for两种循环语句的基本应用方法能力目标能用do-while、for两种循环语句解决实际的循环操作问题教学重点do-while、for两种循环语句及应用方法教学难点1、while、do-while的区别2、for语句的书写形式教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习while循环结构程序设计方法;本次课学习另外两种语句do-while语句和for语句的循环结构程序设计方法。3新课教学一、do…while循环结构程序设计1、do…while语句的一般形式及应用:【例】实现1+2+3+…+100352、while和do…while语句的比较【例】二、for循环结构程序设计1、for语句的一般形式及流程352、应用举例:【例】实现1+2+3+…+100(1)说明:for语句的多种书写形式(2)拓展实验:1+3+5+…+99;2+4+6+…+100;1+2+3+…+n3、嵌入式软件设计中常用的两种for语句形式34、编程:打印“水仙花数”10课堂小结3种最基本的循环语句书写形式及流程3作业布置复习本次课内容,完成工作手册对应的练习题;预习下一节节内容17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称7-循环结构程序设计(3):循环嵌套、break语句和continue语句授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1、掌握循环嵌套的应用2、理解break语句和continue语句在循环结构中的控制作用能力目标能用循环嵌套、break语句、continue语句解决实际的循环操作问题教学重点循环嵌套、break语句和continue语句在循环控制问题中的应用教学难点break语句和continue语句在循环控制中的区别教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入复习3种最基本的循环语句形式和流程:while语句、do-while语句、for语句;导入循环中套循环——循环嵌套。10新课教学一、循环嵌套【例】循环次数统计25二、break语句和continue语句1、break语句和continue语句的一般形式、作用及区别2、【例】break语句和continue语句在循环结构中的应用25三、练习本单元相关练习题25课堂小结循环结构程序设计方法:while、do-while、for三种语句,循环嵌套,break语句和continue语句的区别3作业布置完成工作手册对应的练习题;预习预处理命令27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称预处理命令授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握宏定义、文件包含、条件编译等预处理命令的应用能力目标能灵活使用预处理命令编写C程序教学重点宏定义、文件包含、条件编译等预处理命令的应用教学难点带参数的宏定义、条件编译教学方法讲授法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入几乎所有的C语言程序,都使用以“#”号开头的预处理命令,例如包含命令#include、宏定义命令#define等。预处理命令一般放在源文件的前面,称为预处理部分。本次课学习3种常用的预处理命令:宏定义、文件包含、条件编译。2新课教学一、宏定义1、不带参数的宏定义(1)一般形式:#define宏名或#define宏名替换文本例:#definePI3.1415926(2)【例】根据输入的半径,求圆的周长和面积252、带参数的宏定义(1)带参宏定义的一般形式:#define宏名(形参表)替换文本(2)带参宏调用的一般形式:宏名(实参表)(3)【例】根据输入的半径,求圆的面积25二、文件包含1、一般形式:#include<文件名>或#include"文件名"2、应用方法5三、条件编译1、4种常见形式条件编译:作用及区别2、预处理命令的综合应用:【例】30课堂小结3种预处理命令的形式及作用:宏定义、文件包含、条件编译2作业布置复习本单元内容,完成工作手册对应的练习题;完成本单元练习题17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称1-一维数组及其应用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解数组的概念2.掌握一维数组的定义、初始化和引用的方法3.理解冒泡排序或选择排序的算法能力目标能用数组解决实际问题教学重点1.一维数组的定义、初始化和引用的方法2.冒泡排序的算法教学难点冒泡排序的算法教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入根据前面学过的基本数据类型,如何解决20个整型数据的存放问题?导入数组:“数据的组合”,具体而言,数组是将相同类型的若干数据按序组合在一起,即数组是有序同类型数据的集合。3新课教学一、一维数组1、定义一维数组的方法(1)一般形式:类型标识符数组名[常量表达式](2)一维数组在内存中的存储形式连续空间、数组元素的编号、数组名代表数组的首地址352、一维数组的初始化:对全部或部分元素赋初值3、一维数组元素的引用:数组名[下标]【例】将一组数据倒序输出二、一维数组的的应用——处理批量同类型的数据1、冒泡排序(1)算法分析(2)代码实现【例】2、其他例题/练习题40课堂小结数组的概念;一维数组的定义、初始化、元素应用的方法;排序算法1作业布置本节课例题、思考与总结;完成工作手册对应的练习题;预习“二维数组”17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路1、【例3.1】对数组a可先直接初始化赋值:a[10]={0,1,2,3,4,5,6,7,8,9},然后再引导学生利用for循环赋值;2、冒泡排序和选择排序,可以根据实际情况选用其中一种排序法讲解,然后引导学生自学另一种排序法。冒泡排序法教学中,教师可先不引出“交换标志swap_flag”,而是引导学生思考“若参与排序的多个数据在某轮比较前,恰好已经按照由小到大排序时,程序有无需要改进之处”,这样教学效果会更好。

章节名称2-二维数组及其应用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标掌握二维数组的定义、初始化和引用的方法能力目标能用数组解决实际问题教学重点二维数组的定义、初始化和引用的方法教学难点二维数组的存储形式,二维数组看作一维数组教学方法讲授法、启发法、对比法、练习法、演示法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入我们可用1个一维数组存放1名学生的语文、数学、英语3门课的成绩,而如何存放多名学生的语文、数学、英语3门课成绩呢?在C语言中,可用二维数组解决此类问题。在嵌入式软件设计中,二维数组可用于点阵显示码、液晶显示码等编码的存取。5新课教学1、定义二维数组的方法(1)一般形式:类型标识符数组名[常量1][常量2];(2)二维数组在内存中的存储形式连续空间、数组元素的编号二维数组看作一维数组数组名代表数组的首地址302、二维数组的初始化:对全部或部分元素赋初值3、二维数组元素的引用:数组名[下标][下标]【例】二维数组元素的赋值和输出254、二维数组的应用【例】输出矩阵,并找出矩阵中的最大元素的值和位置25课堂小结一维数组和二维数组的比较:定义、初始化、元素引用;应用场合3作业布置本次课例题,完成工作手册对应的练习题;预习下一节“字符数组”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路1、可对比一维数组学习二维数组,一维数组相当于1层楼多间教室,而二维数组相当于多层楼,每层具有相同的多间教室。2、对数组a可先直接初始化赋值:a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},然后再引导学生利用for循环赋值。

章节名称3-字符数组及其应用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握字符数组的定义、初始化和引用的方法2.掌握字符数组的输入、输出方法3.掌握字符串处理函数能力目标能用字符数组解决实际问题教学重点1.字符数组的定义、初始化和引用的方法2.字符数组的输入、输出方法3.字符串处理函数教学难点1.字符数组的输入、输出方法2.字符串处理函数教学方法讲授法、启发法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入前面已经学习的一维数组和二维数组,基本都是数值数组,即数组元素为数值。本次课学习用来存放字符型数据的数组——字符数组,字符数组中的每个元素存放一个字符。在嵌入式网络通信软件设计中,可用字符数组存放待发送或待接收的数据。2新课教学一、字符数组1、定义字符数组的方法:char数组名[常量表达式];302、字符数组的初始化(1)逐个字符赋值法(2)字符串常量赋值法3、字符数组元素的引用:数组名[下标]【例】二、字符数组的输入、输出1、用格式符“%c”逐个字符输入、输出【例】2、用格式符“%s”对整个字符串一次输入、输出【例】30三、字符串处理函数puts、gets、strcat、strcpy、strcmp、strlen、strlwr、strupr25课堂小结字符数组的定义、初始化、元素引用,输入、输出;字符串处理函数及应用2作业布置复习本次课内容,完成工作手册对应的练习题;完成本单元练习题17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路1、引导学生对比一维数值数组学习字符数组,同时结合第1章学习的字符型数据知识学习字符数组的初始化方法。2、由于时间关系,可引导学生课下上机教材的其他例题。

章节名称1-函数概述、定义函数的方法、函数的一般调用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.了解函数在不同角度的分类2.掌握定义函数的方法3.掌握函数的一般调用方法能力目标能用函数实现模块化程序设计教学重点1.定义函数的方法2.函数的一般调用方法教学难点1.有参函数的定义方法和调用方法、函数参数传递2.函数的类型和返回值教学方法讲授法、类比法、对比法、演示法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入之前编写的C程序大多只有一个函数—主函数,执行语句全部放在主函数中,什么事都由主函数亲自做,一旦事情多了就会很累。为了减轻主函数的负担,C语言允许将实现特定功能的代码独立成一个子函数,供主函数调用。本单元将要学习函数的定义方法、调用方法、变量的类型等知识。2新课教学一、函数概述1、C源程序的组成2、函数的分类5二、定义函数的方法1、定义无参函数2、定义有参函数20三、函数的一般调用1、函数的一般调用流程2、函数的一般调用形式(1)无参函数(2)有参函数【例】求两个数的最大值3、有参函数调用时,“参数传递”的问题:(1)形参变量存储单元的分配和释放,实参与形参占用不同的存储空间。(2)单向信息传递,形参数值变化并不会改变实参数值。【例】(3)当形参为普通变量(基本类型的变量)时,实参的形式4、函数的值:(1)return语句;(2)函数类型5、对函数的声明:提倡使用第1种声明形式60课堂小结定义函数的方法、函数的一般调用、函数的值、函数的声明方法2作业布置复习本次课内容;完成工作手册对应的练习题;预习函数的嵌套调用和递归调用17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称2-函数的嵌套调用和递归调用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握函数的嵌套调用流程和调用方法2.掌握函数的递归调用流程和调用方法能力目标能用函数的嵌套调用或递归调用实现模块化程序设计教学重点1.函数的嵌套调用流程和调用方法2.函数的递归调用流程和调用方法教学难点函数的递归调用流程和调用方法教学方法讲授法、类比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入现在我们知道,通过函数可以实现模块化程序设计,将实现一定功能的程序段编写成一个独立的子函数,供其他函数所调用。上次课我们主要学习了定义无参函数和有参函数的方法、函数的一般调用方法、函数的值、函数的声明方法。函数的调用除了一般调用,还有嵌套调用和递归调用两种方式,本次课学习这两种方式的函数调用方法。5新课教学一、函数的嵌套调用1、函数的嵌套调用流程2、函数的嵌套调用举例【例】30二、函数的递归调用1、函数的递归调用流程2、函数的递归调用举例【例】50课堂小结函数的嵌套调用和递归调用的流程及调用方法3作业布置复习本次课内容;完成工作手册对应的练习题;预习“数组作为函数参数传递”内容27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称3-数组作为函数参数授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握数组元素作函数实参的本质和应用2.掌握数组名作为函数参数的本质和应用能力目标能用数组元素或数组名作为函数参数解决实际问题教学重点1.数组元素作函数实参的本质和应用2.数组名作为函数参数的本质和应用教学难点数组名作为函数参数的本质和应用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入我们前面所学的有参函数调用时,形参一般是普通变量,而实参可以是常量、变量或表达式。那么数组是否可以作函数参数进行信息传递呢?这是本次课我们需要研讨的问题。数组作为函数参数使用时,有两种形式:(1)数组元素作实参;(2)数组名作函数的实参和形参5新课教学一、数组元素作函数实参251、本质:将数组元素看作普通变量,单向的值传递2、举例分析:【例】二、数组名作函数参数551、本质:数组名作函数的实参和形参,单向的地址传递2、举例分析:【例】3、拓展应用:【例】改写冒泡排序法程序课堂小结数组元素作实参时,单向传递数组元素的值;数组名作函数的实参和形参时,单向传递实参数组的首地址3作业布置复习本次课内容;完成工作手册对应的练习题;预习下一节“变量的类型”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路通过冒泡法排序函数,引导学生注重模块化程序设计

章节名称4-变量的类型(1):全局变量和局部变量;局部变量的存储方式授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握局部变量和全局变量的区别及应用2.掌握动态局部变量和静态局部变量的区别及应用能力目标能根据实际需要定义和使用合适类型的变量教学重点1.局部变量和全局变量的区别及应用2.动态局部变量和静态局部变量的区别及应用教学难点动态局部变量和静态局部变量的区别及应用教学方法讲授法、类比法、对比法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入大家知道,可通过函数可实现模块化程序设计,那么在一个源文件中可能有多个函数,而每个函数中都会定义和使用一些变量。现在我们一起分析程序中变量的类型。从变量的作用域(作用范围)角度,变量可分为局部变量和全局变量。从变量值存在的时间(生存期)角度,变量有静态存储和动态存储两种存储方式。5新课教学一、局部变量和全局变量1、局部变量(1)函数内部定义的变量,包括形参,作用域仅限于函数内部(2)不同函数可使用相同的变量名2、全局变量(1)函数外部定义的变量,作用域从定义处开始到本源文件结束(2)全局变量的应用——资源共享【例】(3)全局变量和局部变量同名,全局变量失效【例】(4)系统会自动赋初值数值0或空字符'\0'【例】50二、变量的存储方式(存储类别)静态存储和动态存储变量有两个属性及其一般形式:存储类型数据类型变量名;2、用auto声明动态局部变量3、用static声明静态局部变量【例】32课堂小结变量的类型:作用域角度——局部变量和全局变量;变量值的生存期角度——静态存储和动态存储2作业布置复习本次课内容,完成工作手册对应的练习题;预习其他存储类型的变量17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称5-变量的类型(2):局部变量和全局变量的存储方式;内部函数和外部函数、[嵌入式中断服务函数]授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握静态局部变量的应用2.熟悉register声明寄存器变量及应用,理解volatile关键字的应用3.掌握extern、static声明外部变量的区别及应用4.掌握内部函数和外部函数的区别及应用能力目标能根据实际需要定义和使用合适类型的变量,以及内部函数和外部函数教学重点1.静态局部变量的应用2.extern、static声明外部变量的区别及应用3.内部函数和外部函数的区别及应用教学难点1.静态局部变量的应用2.extern、static声明外部变量的区别及应用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课学习了局部变量和全局变量的区别;用关键字auto和static分别声明动态局部变量和静态局部变量。本次课首先学习static静态局部变量的应用,然后学习register声明寄存器变量、extern声明外部变量、static声明外部变量,以及内部函数和外部函数。3新课教学一、static静态局部变量的应用场合(1)需要保留上次函数调用结束时的值【例】利用静态局部变量实现:输出1~5的阶乘。或【例】嵌入式应用:定时时间到(如每隔100ms),CPU执行一次fun函数。(2)函数中只被引用而不改变值的变量,无需每次函数调用时重新定义和赋值(3)系统默认初始值为数值0或空字符'\0',减少程序员的工作量20二、用register声明寄存器变量1、频繁读写的整型或字符型的动态局部变量和形参可以声明为CPU的寄存器变量,提高执行效率【例】2、防止编译器将变量优化为寄存器变量的场合和方法(volatile)20三、用extern声明已经定义的外部变量(扩展外部变量的作用域)1、在一个文件内已经定义的声明外部量【例】2、在多个文件的程序中已经定义的声明外部变量【例】file1.c、file2.c25四、用static声明静态外部变量(缩小外部变量的作用域,限于本文件引用,防止被其他文件引用)5五、static声明内部函数、[extern]声明外部函数5六、嵌入式中断服务函数【选讲】10作业布置复习本章内容,完成工作手册对应的练习题;完成本单元练习题27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称1-指针的概念、指向普通变量的指针授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解指针的概念2.掌握指向普通变量的指针:定义方法、引用方法3.掌握指针变量作为函数参数传递的方法及特点能力目标会使用指针引用变量,并且会用指针变量作为函数参数解决实际问题教学重点1.指针的概念2.掌握指向普通变量的指针:定义方法、引用方法3.掌握指针变量作为函数参数传递的方法及特点教学难点指针变量作为函数参数传递的方法及特点教学方法讲授法、类比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入我们已经学过了基本数据类型(整型、实型、字符型)和数组类型。而指针是C语言中广泛使用的一种数据类型。通过指针,可以对计算机的硬件地址直接操作,在嵌入式系统与物联网软件设计中应用非常广泛,利用指针编写的嵌入式软件具有精炼、高效的优点,因此很有必要学习指针知识。5新课教学一、指针的基本概念1、对变量的访问方式:直接访问、间接访问2、指针和指针变量的概念10二、指向普通变量的指针1、定义指针变量的方法2、指针变量的引用:运算符&和*【例】通过指针变量访问整型变量3、说明:1)*p在定义和引用中的区别;2)&*p、*&a的含义4、应用:输入两个数,按由大到小的顺序输出这两个数【例】40三、指针变量作为函数参数——单向的地址传递1、【例】指针变量(变量的地址)作为函数参数思考与总结:函数调用时可得到多个要改变的值2、【例】对输入的两个整数进行交换并输出,要求编写数据交换的函数,并要求用指针变量作函数参数(选讲选做)30课堂小结指针的概念、指向普通变量的指针、指针变量作为函数参数3作业布置复习本次课内容,深刻理解指针的概念及应用;完成工作手册对应的练习题;预习下节“指向数组的指针”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称2-指向数组的指针(1):通过指针引用数组元素授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解指向数组元素的指针,掌握定义指向数组元素的指针变量及初始化2.掌握通过指针引用数组元素的方法能力目标会使用指针引用数组元素教学重点1.定义指向数组元素的指针变量及初始化2.通过指针引用数组元素教学难点通过指针引用数组元素教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课我们学习了指针的概念、指向普通变量的指针(定义方法、指针变量的引用、指针变量作为函数参数传递的本质和用途)。既然有指向普通变量的指针,而数组中的每个元素都有自己的地址,因此也应该有指向数组元素的指针,那么本次课就来学习指向数组的指针。5新课教学一、指向数组元素的指针指向数组元素的指针变量的定义及初始化方法10二、通过指针引用数组元素1、若p=a;则p+i、a+i、&a[i]等价,都代表数组元素a[i]的地址;而*(p+i)、*(a+i)、a[i]等价,都代表数组元素a[i]的值102、通过【例】对比分析通过下标法、指针法引用数组元素,体会通过(p++)引用数组元素的优点303、应用:【例】20三、有关指向数组的指针变量的运算如果指针变量p指向数组a的某元素,讨论下列表达式的含义:(1)*p++(2)*(p++)与*(++p)(3)(*p)++(4)若p当前指向数组a中的第i个元素:*(p--)、*(++p、*(--p)10课堂小结定义指向数组元素的指针变量及初始化方法、通过指针引用数组元素的方法3作业布置复习本次课内容;完成工作手册对应的练习题;预习数组名函数参数、函数参数的形式27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称3-指向数组的指针(2):数组名(指针变量)作函数的参数授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解数组名作函数参数的本质2.理解函数参数不同的形式(数值传递、地址传递)3.掌握指向数组的指针变量作函数参数的应用方法能力目标能根据实际需要,确定合适的函数参数形式教学重点1.数组名作函数参数的本质2.函数参数不同的形式(数值传递、地址传递)3.指向数组的指针变量作函数参数教学难点指向数组的指针变量作函数参数教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课我们学习了指向数组元素的指针,包括指针变量的定义和初始化法,通过指针引用数组元素的方法。本次课学习指向数组的指针变量作函数参数的应用方法。5新课教学一、用数组名作函数参数数组名作函数参数的本质分析10二、函数参数形式的比较1、单向的值传递2、单向的地址传递10三、若有一实参数组,要想通过函数调用改变此数组中元素的值,实参和形参的对应关系1、4种情况分析(1)实参、形参都用数组名(2)实参用数组名,形参用指针变量(3)实参和形参都用指针变量(4)实参用指针变量,形参用数组名122、应用:(1)【例】指针变量作函数形参,改写例4.7程序(2)【例】指针变量作函数参数,改写例4.8程序总结:通过指针变量引用数组元素,会提高程序的执行效率50课堂小结函数参数形式的比较、指向数组的指针变量作函数参数2作业布置复习本次课内容;完成工作手册对应的练习题;预习下节:通过指针引用多维数组17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称4-通过指针引用多维数组授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解二维数组元素的有关地址和元素值2.掌握指向二维数组的指针变量的两种形式3.掌握指向二维数组的指针变量作函数参数的应用能力目标能利用指向二维数组的指针变量解决实际问题教学重点1.二维数组元素的有关地址和元素值2.指向二维数组的指针变量的两种形式3.指向二维数组的指针变量作函数参数的应用教学难点指向由n个元素组成的一维数组的指针变量及应用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入指针变量可以指向一维数组的元素,也可以指向多维数组的元素。但在概念和使用方法上,多维数组的指针要比一维数组的指针复杂一些,本次课学习二维数组的指针及应用方法。2新课教学一、二维数组元素的地址1、二维数组看作一维数组2、二维数组的有关地址和元素值25二、指向二维数组的指针变量1、指向二维数组元素的指针变量【例】152、指向由n个元素组成的一维数组的指针变量【例】20三、用指向二维数组的指针变量作函数参数1、用指向二维数组元素的指针变量(列指针)2、用指向由n个元素组成的一维数组的指针变量(行指针)应用举例:【例】25课堂小结二维数组的有关地址和元素值、指向二维数组的指针变量的两种方式2作业布置复习本次课内容;完成工作手册对应的练习题;预习下节“指向字符串的指针”17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称5-指向字符串的指针授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握字符串的两种引用方式:字符数组法、字符指针法2.掌握字符串在函数间的传递方式:数组名或字符指针变量作函数参数3.理解字符指针变量和字符数组的区别能力目标能用字符指针变量实现字符串在函数间的传递教学重点1.字符串的两种引用方式:字符数组法、字符指针法2.字符串在函数间的传递方式:数组名或字符指针变量作函数参数3.字符指针变量和字符数组的区别教学难点字符指针变量实现字符串在函数间的传递教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入我们已经学了指向普通变量的指针、指向数组的指针,可以通过指针变量分别引用变量的值和数组元素的值。本次课学习指向字符串的指针,一起探讨是否可以通过指针变量引用字符串中的字符。2新课教学一、字符串的引用方式1、字符数组法【例】2、字符指针法【例】引导学生根据指向一维数组的指针变量理解字符指针变量35二、字符串在函数间的传递方式1、用字符数组名作函数参数传递【例】302、用字符指针变量作函数参数传递三、使用字符指针变量与字符数组的区别1、存储内容不同2、赋值方式不同3、用带下标的字符指针变量引用字符串中的字符【例】20课堂小结字符串的两种引用方式:字符数组法、字符指针法字符串在函数间的传递方式:数组名或字符指针变量作函数参数字符指针变量和字符数组的区别2作业布置复习本次课内容;完成工作手册对应的练习题;预习下节“指向函数的指针”17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称6-指向函数的指针授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.理解指向函数的指针的概念2.掌握通过指针变量调用函数的步骤和方法3.理解指向函数的指针的应用——灵活调用函数、作函数参数能力目标会定义指向函数的指针变量,并能通过指针变量调用函数教学重点1.指向函数的指针的概念2.通过指针变量调用函数的步骤和方法3.指向函数的指针的应用——灵活调用函数、作函数参数教学难点指向函数的指针的应用——灵活调用函数、作函数参数教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入至此我们已学习了指向普通变量的指针、指向数组的指针、指向字符串的指针,可以通过指针变量分别引用变量的值、数组元素的值、字符串中的字符。本次课学习指向函数的指针,一起探究如何通过指针变量调用函数。5新课教学一、指向函数的指针1、概念:指向函数入口地址的指针2、对比分析通过“函数名”和“指向函数的指针变量”调用函数【例】引导学生总结通过指针变量调用函数的步骤和方法:(1)定义指向函数的指针变量:类型标识符(*指针变量名)(函数参数列表)(2)将函数的入口地址(函数名)赋给指针变量,使指针变量指向函数(3)通过“(指针变量名)(函数参数列表)”调用函数40二、指向函数的指针应用1、通过指向函数的指针变量灵活调用不同的函数【例】402、指向函数的指针变量作函数参数课堂小结指向函数的指针的概念,通过指针变量调用函数的步骤和方法,指向函数的指针的应用——调用函数、作函数参数3作业布置复习本次课内容,完成工作手册对应的练习题;上网查资料完成本单元练习题第26题;预习下节“返回指针值的函数”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称7-返回指针值的函数、指针数组的概念及简单应用授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握定义返回指针值的函数的方法及简单应用2.掌握指针数组的概念、定义方法及简单应用能力目标能区分:指向函数的指针和返回指针值的函数;指向由n个元素组成的一维数组的指针变量和指针数组教学重点1.定义返回指针值的函数的方法及简单应用2.指针数组的概念、定义方法及简单应用教学难点1.区分指向函数的指针和返回指针值的函数2.区分指向由n个元素组成的一维数组的指针变量和指针数组教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入一个函数可以返回一个基本类型(整型、实型、字符型)的值,也可以返回指针类型的值,即返回一个地址。另外,有基本类型的数组,也有指针类型的数组。本次课主要学习返回指针值的函数和指针数组。5新课教学一、返回指针值的函数1、定义返回指针值的函数:类型标识符*函数名(形参列表);例如:int*f(intx,inty);区分:int(*f)(int,int);2、举例:【例】利用指针型函数输出静态局部数组的元素值【例】利用指针型函数输出字符串【例】将上例fun函数中的字符串存入字符数组3、说明返回指针值的函数的应用场合40二、指针数组1、指针数组的概念2、定义一维指针数组:类型标识符*数组名[数组长度];例如:int*p[3];区分:int(*p)[3]3、简单实例分析:【例】利用指针数组指向多个整型变量【例】利用指针数组指向一维整型数组的各元素40课堂小结定义返回指针值的函数的方法及简单应用;指针数组的概念以及定义一维指针数组的方法及简单应用3作业布置复习本次课内容,完成工作手册对应的练习题;预习下节“指针数组的实际应用、指向指针的指针”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路章节名称8-指针数组的实际应用、指向指针的指针授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握指针数组的实际应用2.掌握指向指针的指针的概念、定义方法及其应用能力目标能用指针数组和指向指针的指针解决实际问题教学重点1.指针数组的实际应用2.指向指针的指针的概念、定义方法及其应用教学难点指针数组和指向指针的指针的实际应用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课学习了指针数组的概念、定义一维指针数组的方法,并通过实例分析了指针数组的简单应用,本次课将要学习指针数组的实际应用,并进一步学习指向指针的指针。3新课教学一、指针数组的实际应用1、利用字符型指针数组处理多个字符串【例】分别用二维数组和字符型指针数组处理多个字符串2、利用函数型指针数组实现对若干个函数的调用【例】函数型指针数组的应用3、指针数组作main函数的形参:intmain(intargc,char*argv[])【例】测试带有参数的main函数(选讲选做)40二、指向指针的指针1、“指向指针的指针”概念2、定义指向指针的指针变量:类型标识符**指针变量名;例如:int**p;相当于:int*(*p);【例】分析程序,理解指向指针的指针3、实际应用:指向指针的指针常与指针数组配合使用处理问题【例】一指针数组num,其元素分别指向一维整型数组a的各元素。现用指向指针的指针变量p依次输出数组a中各元素的值【例】一指针数组ps,其元素分别指向3个字符串。现用指向指针的指针变量p,依次输出3个字符串45课堂小结指针数组的实际应用;指向指针的指针的概念、定义方法及其应用1作业布置复习本次课内容;完成工作手册对应的练习题;预习下节“内存动态分配与指向动态内存区的指针变量”17S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称9-内存动态分配与指向动态内存区的指针变量、指针小结授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握内存动态分配的概念、方法及应用2.熟练区分各类指针能力目标能用指针处理和解决实际问题教学重点1.内存动态分配的概念、方法及应用2.各类指针的区分教学难点各类指针的区分教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入至此,已经学习了指向普通变量的指针、指向数组的指针、指向字符串的指针、指向函数的指针、指向指针的指针,本次课学习指向动态内存区的指针。5新课教学一、内存动态分配的概念1、内存动态分配:需要时随时申请开辟,不需要时随时释放2、在内存中动态分配的数据,只能通过指针来引用5二、内存动态分配的方法——通过系统提供的库函数来实现1、malloc函数:void*malloc(unsignedsize);2、calloc函数:void*calloc(unsignedn,unsignedsize);3、free函数:voidfree(void*p);4、realloc函数:void*realloc(void*p,unsignednewsize);15【例】malloc函数、calloc函数、free函数的应用:动态数组的建立和释放25【例】realloc函数的应用:增大动态数组的空间25三、指针小结1、各类指针的区分2、使用指针处理问题的优点13作业布置复习本次课内容;完成工作手册对应的练习题;完成本章练习题27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称1-结构体类型概述、结构体变量授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握结构体类型的声明方法2.掌握结构体变量的定义、初始化和引用方法能力目标1.能根据实际需要声明结构体类型;2.会用结构体变量解决实际问题教学重点1.结构体类型的声明方法2.结构体变量的定义、初始化和引用方法教学难点结构体类型的声明、结构体变量的引用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配导入前面已经学习了基本类型(整型、实型、字符型)和一种构造类型——数组,数组是将相同类型的多个数据组合在一起。在实际问题中,一组数据往往具有不同的数据类型。例如,在学生成绩表中,一名学生的学号为整型、姓名为字符型、成绩为实型,显然不能用一个数组将某个学生的这些数据组合在一起。为解决这一问题,用户可以建立由不同类型(或相同类型)数据组成的组合型数据结构——结构体。5新课教学一、结构体类型概述结构体类型声明:关键字struct、结构体名、成员名10二、结构体变量1、定义结构体变量的方法(1)先声明结构体类型,再定义结构体变量(2)在声明结构体类型的同时定义结构体变量(3)不指定结构体名而直接定义结构体变量2、说明:(1)结构体成员也可以是一个结构体类型的变量(2)结构体成员名可与程序中其他变量同名30二、结构体变量的初始化和引用1、结构体变量的初始化2、结构体变量成员的引用:结构体变量名.成员名【例】303、对结构体变量的说明:(1)结构体变量成员的运算(2)结构体变量地址和成员地址的引用10课堂小结结构体类型声明的方法,结构体变量的定义、初始化及引用方法3作业布置复习本次课内容;完成工作手册对应的练习题;预习下节“结构体数组”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称2-结构体数组授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握结构体数组的定义、初始化方法2.理解结构体数组的存储形式能力目标会用结构体数组解决实际问题教学重点1.结构体数组的定义、初始化方法、存储形式2.结构体数组的应用教学难点结构体数组的存储形式和具体应用教学方法讲授法、对比法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入上次课学习了结构体类型的声明、结构体变量的定义、初始化及引用方法。一个结构体变量可以存放一个学生的相关数据,若有多个学生的数据需要保存和处理时,自然会想到使用结构体数组,结构体数组中的每个元素都是一个结构体类型的数据。请回忆数组的定义、初始化和引用方法。我们将对比结构体变量和基本类型的数组学习结构体数组。5新课教学一、结构体数组的定义、初始化及存储形式1、定义结构体数组的方法2、结构体数组的初始化3、结构体数组的存储形式30二、结构体数组的应用1、【例】计算学生的平均成绩,并统计不及格的人数2、【例】建立同学通讯录50课堂小结结构体数组的定义、初始化、存储形式、引用方法3作业布置复习本次课内容;完成工作手册对应的练习题;预习下节“结构体指针”27S管理整理、整顿、清扫、清洁、素养、节约、安全课后教学效果及改进思路

章节名称3-结构体指针授课类型□理论□实验理实一体□实训□实习班级地点周次星期节次授课进度符合□超前□滞后符合□超前□滞后符合□超前□滞后教学目标知识目标1.掌握结构体指针变量的定义和初始化方法2.掌握访问结构体数据成员的3种形式3.掌握结构体指针变量作函数参数的应用方法能力目标能用结构体指针变量解决结构体数据的访问和传递问题教学重点1.结构体指针变量的定义和初始化方法2.访问结构体数据成员的3种形式3.结构体指针变量作函数参数的应用方法教学难点1.指向结构体数组的指针变量2.结构体指针变量作函数参数教学方法讲授法、启发法、练习法教学手段多媒体、机房电脑、板书教学资源教材、教学PPT、微课视频、课程网站教学设计教学环节内容要点与手段时间分配复习导入我们曾经在第5单元学习过指向普通变量的指针和指向数组的指针,前面也学习了结构体类型的变量和数组。那么结构体指针就是用来指向结构体数据(结构体变量或结构体数组元素)的指针,一个结构体数据的“起始地址”就是这个结

温馨提示

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

评论

0/150

提交评论