APP下载

C语言教学中一维数组的教学设计

2016-10-31徐晨

课程教育研究·学法教法研究 2016年22期
关键词:C语言教学设计

徐晨

【摘 要】 数组是C语言中非常重要的概念,通常学生在初次接触到这一概念时感到很抽象。本文通过生活中常常接触到的超市储物柜与数组进行类比,将数组这一抽象概念与具体的物品建立联系,再结合案例引出数组的定义、初始化和引用方法,以期提高C语言的教学效果。

【关键词】 C语言;一维数组;教学设计

【中图分类号】G64.26 【文献标识码】A 【文章编号】2095-3089(2016)22-0-01

1 引言

数组是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,用编号区分这些变量的集合。这个名字称为数组名,编号称为下标,组成数组的各个变量称为数组的元素。数组是C语言程序设计中非常重要的概念,学习数组的第一步是要掌握一维数组的定义、引用,以及初始化赋值方法。

2 教学方法简述

(1)讲授法

在理解数组的概念时需要使用讲授法配合课件进行活泼、有趣的讲解。在教学过程中切忌照本宣科,这样容易让学生感到厌烦和枯燥,课件应制作得美观、生动,如选择美观大方的课件模板,结合节奏适宜的动画,在举例时尽量附上有关的图片等。

(2)“教、学、做”三位一体教学法

对于出现的代码示例,教师边演示边讲解,学生随后模仿学习、上机操作。既锻炼了学生的实际动手能力,又使学生对所学知识有了更深刻的印象。

(3)协同学习法

由于学生学习水平有差异,基础好的学生可以给基础差的学生讲解,学生之间传递的知识往往比老师传授的更容易接受,这样基础差的学生有了初步的认识,基础好的学生得到知识的巩固。

3 教学过程设计

(1)教学引入

教师用超市中可以存储东西的储物柜类比C语言中的数组,提及柜子上有编号,为后面介绍数组的下标作铺垫。

语言组织举例:我们都见过超市的储物柜,一排柜子上有编号,柜子中可以存储东西,在C语言中也有类似的储物柜——数组。

(2)数组的基本概念

教师将学过的概念——变量,比作小箱子,再将数组解释为连着的小箱子,并且点出数组的重要特点——数组中的元素必须为相同的数据类型。

语言组织举例:如果我们把变量比喻成小箱子,那么数组就是把这些小箱子都连起来。连起来的箱子的类型必须都是一样的,这样方便我们存储一些同类型的内容。比如,每门课的考试分数装入连着的一个个小箱子中,这些连着的小箱子就是一个数组。

教师用代码段举例不同类型的数组。例:

int array1[6];/*这个数组存的是整数,能存6个整数*/

float array2[6];/*这个数组存的是实数,能存6个实数*/

char array3[6];/*这个数组存的是字符,能存6个字符*/

(3)一维数组的定义

教师提问,能从上面的代码段中总结出数组的定义方法吗?

学生思考,通过观察可以发现三个数组定义都是采用的数据类型 名字[数字]的格式,通过注释可以猜测[]中的数字是数组能存放的数据个数。

教师分析并引出一维数组的定义方式:数据类型 数组名字[个数]

教师对定义语法进行解释,数据类型就是int,float,char等,表示这个数组能装什么类型的数据;数组名是自己取的,命名规则和变量名相同,并且要唯一,不能重复;中括号[]必须要有,[]中的数字是指这个数组能存几个元素。

(4)一维数组的初始化

教师提问,int a=0;这句C程序语句进行了什么操作?

学生思考后回答,声明int型变量a并对它赋初值。

教师将赋初值的概念引申到数组中,数组的初始化就好比变量赋初值。举例,对“(2)数组的基本概念”中的数组进行初始化。例:

int array1[6]={0,1,2,3,4,5};

char array2[6]={ h,e,l, l,o,c};

float array3[6]={1.1,1.2,1.3,1.4,1.5,1.6};

(5)一维数组元素的引用

学生上机练习,结合“(4)一维数组的初始化”中的代码段,在C程序中分别定义int型、char型、float型数组,并初始化。

学生在定义并初始化数组后,好奇数组是如何使用的,部分学生在尝试直接修改数组内容后失败。

教师解释,数组只能在初始化时用{}赋值,此后想要再修改、读取数组中的内容只能对数据中的某一个元素进行操作。引用数组元素的方式是数组变量名[下标],下标是有序的,类似储物柜下面的编号,范围从0到数组长度-1。教师引导学生写出将array1第6个元素值修改为10的代码。

学生思考写出代码:array1[5]=10;部分学生容易错写为array1[6]=10;程序报错。

教师强调数组下标从0开始,最大下标应为长度-1。

教师提问,要想输出整个数组中的内容,应该怎么办呢?教师提示学生利用循环。

学生在教师提示下写出代码:

int i;

for(i=0;i<6;i++) printf(“%d”,a[i]);

(6)数组的一些独特使用方法

教师介绍数组的一些独特使用方法,学生上机验证。

①往数组中存储时可以只存一部分,例如:int a[6]={0,1,2};

②申请数组时可以不写[]中的数字,例如:int a[]={0,1,2,3,4,5};

4 结束语

通常学生在初次接触到数组这一概念时,感到很抽象,难以理解。本文通过生活中常常接触到的超市储物柜与数组进行类比,将数组这一抽象概念与具体的物品建立联系,再结合案例引出数组的定义、初始化和引用方法这样的教学设计,将教学内容自然串联起来,步步深入,教学流程设计上符合认知规律,学生学习起来更加轻松。

参考文献:

[1] 王宏旭. C程序设计中的数组的教学设计[J]. 信息技术与信息化, 2015(7): 122-123.

[2] 程妮. C语言中冒泡排序算法的教学设计与分析[J]. 现代计算机, 2016(10): 59-63.

[3] 戴青云. VB教学中数组案例教学设计[J]. 科学中国人, 2014(11): 115-116.

猜你喜欢

C语言教学设计
基于Visual Studio Code的C语言程序设计实践教学探索
基于C语言的计算机软件编程
C语言程序设计课程教学与学科专业相结合的探索
高职高专院校C语言程序设计教学改革探索
《电气工程毕业设计》 课程的教学设计
高中数学一元二次含参不等式的解法探讨
“仿真物理实验室” 在微课制作中的应用
翻转课堂在高职公共英语教学中的应用现状分析及改善建议
马克思主义基本原理概论课案例教学的几点思考
论子函数在C语言数据格式输出中的应用