中等专业学校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小时内删除。