中等专业学校2022-2023-2教案 编号:
备课组别 | 计算机组 | 课程名称 | C语言 | 所在 年级 | 二年级 | 主备 教师 | |||
授课教师 | 授课系部 | 授课班级 | 授课 日期 | ||||||
课题 | 二维数组专题总结(一) | ||||||||
教学 目标 | 针对二维数组专题进行归纳总结 | ||||||||
二维数组图形的输出 | |||||||||
程序行列规律的总结 | |||||||||
重点 | 对二维数组重要程序段总结分析 | ||||||||
难点 | 各种图形的分析总结规律 | ||||||||
教法 | 讲授法、案例教学法、讨论法 | ||||||||
教学设备 | 黑板 计算机 网络机房 | ||||||||
教学 怎么定义二维数组c语言环节 | 教学活动内容及组织过程 | 个案补充 | |||||||
教 学 内 容 | 一、导入: 对前段时间学习的二维数组以及各种图形的打印进行归纳总结,分析规律和重要程序段 二、讲授: 1、遍历打印输出二维数组的元素 #include <stdio.h> void main() { int a[3][3]={{23,46,11},{99,45,82},{72,90,21}}; for(int i=0;i<3;i++) {for(int j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); }} 思路: 1:每一个下标号对应的元素值是唯一的; 2:因为是二维数组,必须要遍历行,列所以需要两个循环变量; 3:在每一次循环遍历列数后,就用换行语句,可以打印输出标准的行列格式 2、逆序输出二维数组的元素 #include <stdio.h> void main() { int a[3][3]={{23,46,11},{99,45,82},{72,90,21}}; for(int i=2;i>=0;i--) {for(int j=2;j>=0;j--) printf("%d ",a[i][j]); }} 思路: 1:每一个下标号对应唯一的元素值; 2:当下标号发生顺序改变的时候,他们所代表的元素值也发生顺序变化。 3、求二维数组的最值,每一行最值,每一列最值 /*求整个二维数组的最大值*/ #include <stdio.h> void main() { int a[3][3]={{23,46,11},{99,45,82},{72,90,21}}; int max=a[0][0];/*这里必须将max赋初始值,初始值为二维数组中的元素,一般定义为第一个元素*/ for(int i=0;i<3;i++) {for(int j=0;j<3;j++) if(max<a[i][j]) max=a[i][j]; } printf("%d \n",max); } 思路:1:求每一行的最值,先临时设置一个值是二维数组里面的一个元素值; 2:遍历每一列,再遍历行的总数次,并且每遍历下一次的时候,最值要归位。不能将以前的最值拿下来比较 /*求每一列的最大值*/ #include <stdio.h> void main() { int a[3][3]={{23,46,11},{99,45,82},{72,90,21}}; int max=a[0][0]; int i,j; for(i=0;i<3;i++){ for(j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); } printf("\n"); for(j=0;j<3;j++){ max=a[0][j]; for(i=0;i<3;i++)/*求每一列的最大值就遍历行,求每一行的最值就遍历列*/ if(max<a[i][j]) max=a[i][j]; printf("第 %d 列的最大值是:%d\n",(j+1),max); } 三、小结 四、作业 | ||||||||
板 书 设 计 | 二维数组专题总结(一) 1、二维数组输出 2、二维数组最值 | ||||||||
教 后 札 记 | |||||||||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论