内容正文:
课题名称
模块4 数组
计 划
学 时
8学时
内容分析
数组是相同类型的数据组成的集合,数据在数组中按线性顺序排列。高级语言中,可以定义不同维数的数组,常用的有一维数组和二维数组。一维数组相当于数学中的数列,而二维数组可用于保存一个二维表格的数据。
教学目标及基本要求
1. 带领学生通过完成相应案例,掌握使用一维数组和二维数组的方法。
2. 带领学生通过完成相应案例,掌握使用控件数组的方法。
重点及措施
1. 学会定义一维数组、二维数组和控件数组。
2. 能够应用合适的数组来解决实际问题。
难点及措施
1.一维数组、二维数组声明格式及引用方法
2.正确区分控件数组元素的方法
教学方式
讲师课堂教学以PPT讲授为主,结合多媒体进行教学
教
学
过
程
第一学时
一维数组(一)
一.教师演示案例5-1,输入并输出6位英雄人物的名称。
1.需求分析:如图5-1所示,单击窗体,要求输入6位英雄人物的名称,然后将这些人物名称在窗体上输出。
该案例主要涉及数据的接收问题。我们多采用InputBox函数接收英雄人物名称,并将得到的数据存储在事先定义的一维数组中,然后利用循环结构将其在窗体上打印出来。
2.案例实施:具体步骤略
3.学生操作,独立完成案例5-1。
二.内容讲解
(1)数组的定义:数组是若干具有相同数据类型的数据的集合。一维数组相当于数学中的数列。
(2)数组必须先声明后使用,一维数组的声明格式为:
Dim 数组名 ( 下标 ) As 数据类型
(3)数组名的命名规则与简单变量命名规则相同。
(4)数组元素个数为下标数字加1,默认数组第1个元素下标从0开始,如数组rw(5)有6个元素;也可以这样声明数组:
Dim 数组名 ( 下界 To 上界 ) As 数据类型
此时数组第1个元素为数组名 ( 下界 )。
(5)若数组下标为一固定值,则此数组为静态数组,在程序运行中数组元素个数不变;若数组下标为空值,则该数组为动态数组,在程序运行中数组元素个数是动态变化的。
第二学时
一维数组(二)
一.教师演示案例5-2,计算一个参赛作品的平均分。
1.需求分析:有10个评委对参赛作品进行打分,要求编程计算出作品的平均得分(按去掉一个最高分和一个最低分的方法计算),如图所示。
该案例主要涉及三个方面,一是输入并记录一个数组;二是数值之间的比较运算;三是数值的求平均值运算。对于第一方面我们多采用InputBox函数用于接收数据;对于第二方面我们需要用到分支结构 If…then…筛选出最大值与最小值;第三方面需要进行除法运算,但是需要注意将最大值与最小值减去。
2.案例实施:具体步骤略
3.学生操作,独立完成案例5-2。
二.内容讲解
在程序中,最高分的处理是这样实现的:假设 a(0) 是最高分 max,然后将它与数组的其他元素逐个比较,如果有比 max 大的,就将其赋给 max,最后 max 中的值就是最高分。最低分的处理同理。
注意总分去掉最高分和最低分后求平均分时应除以8。
三.自我探索(以学生自主学习与操作为主)
设计程序,给出15个1~100以内的随机数,将其对调后输出。
第三学时
二维数组(一)
一.教师演示案例5-3,打印成绩表。
1.需求分析:单击窗体要将三个学生的语文、数学、英语和VB成绩打印出来,打印时注意要在成绩之间留一定的空格。
这是一个类似二维表格数据的案例,用二维数组存储非常直观方便。可以定义一个3行4列的二维数组,正好可以保存这些数据。接收数据存储到二维数组中要利用双重循环来实现,外层循环控制行数,内层循环控制列数。本案例中要灵活运用Tab(n)函数或Space(n)函数,使得各科成绩之间间隔相等。
2.案例实施:具体步骤略
3.学生操作,独立完成案例5-3。
二.内容讲解
1. 二维数组的声明格式为:
Dim 数组名 ( 下标 1, 下标 2) As 数据类型
2. Dim fs(2, 3) As Integer 语句表示定义一个3行4列的二维数组,元素个数为12。
第四学时
二维数组(二)
一.教师演示案例5-4,浏览房源信息。
1.需求分析:此案例中有多条房源信息,单击“上一条记录”或“下一条记录”按钮,可以浏览一室一厅房源信息,包括房源编号、客厅朝向、及各室面积信息。每条房源信息都有7个字段,是典型的二维表格数据,这就需要用二维数组来实现。本例中同一条记录里的7个数据类型不一样,因此在定义二维数组时,要定义成Variant类型的。
2.案例实施:具体步骤略
3.学生操作,独立完成案例5-4。
第五学时
控件数组(一)
一.教师演示案例5-5,设计一个程序,显示所选择商品的名称与包装重量。
1.需求分析:从三种食品中选择一种,再选择一种包装重量,单击“您的选择是:”按钮,则将你的选择显示在标签上。其中,食品名称和包装重量中各有3个单选按钮,它们各为一组,只能选择其中的一项。我们把一类单选按钮设置成控件数组,使它们拥有相同的控件名,但是标号是不同的,我们便根据标号来判断用户选择的是哪个单选按钮,这样可以大大简化程序。
2.案例实施:添加控件并设置其属性
二.内容讲解
1.控件数组由一组相同的控件组成,它们拥有相同的控件名。
2.通常设置好第一个控件后,通过复制粘贴产生这一组控件数组,系统通过为其赋予不同的Index值来对这个控件数组中的元素进行区分,如案例5-5中薯条单选按钮的Index值为0,巧克力单选按钮的Index值为1,瓜子单选按钮的 Index值为2。通过使用控件数组可以使编程简化。
第六学时
控件数组(二)
一.教师再次演示案例5-5,设计一个程序,显示所选择商品的名称与包装重量。
1.需求分析:再次简要分析程序功能。
2.案例实施:编写事件代码
3.学生操作,独立完成案例5-5。
二.内容讲解
1.控件数组由一组相同的控件组成,它们拥有相同的控件名。
2.通常设置好第一个控件后,通过复制粘贴产生这一组控件数组,系统通过为其赋予不同的Index值来对这个控件数组中的元素进行区分,如案例5-5中薯条单选按钮的Index值为0,巧克力单选按钮的Index值为1,瓜子单选按钮的 Index值为2。通过使用控件数组可以使编程简化。
第七学时
控件数组(三)
一.教师演示案例5-6,制作一个简易计算器,实现简单的加减乘除运算。
1.需求分析:以此案例来巩固按钮控件数组的使用。本例关键在于判断哪些按钮是同一个控件数组里的。经分析,数字按钮0~9为一个控件数组,4个操作符为另一个控件数组。要注意复制的按钮按顺序排列整齐。
2.案例实施:具体步骤略
3.学生操作,独立完成案例5-6。
第八学时
控件数组(四)
1. 教师演示课堂小练手,设计程序,要求单击按钮分别以不同的填充样式打印出Shape控件的6种形状,如图5-7所示。
1.需求分析:以此案例来巩固按钮控件数组的使用。本例中6个Shape控件属于同一个控件数组,因此只需要将对应控件数组元素的Shape属性和FillStyle属性赋上恰当的值即可。
2.案例实施:具体步骤略
3.学生操作,独立完成课堂小练手。
二.内容讲解
1.Shape控件的Shape属性赋值为0~5,分别对应的形状为:矩形、正方形、椭圆形、圆形、圆角矩形、圆角正方形;
2.Shape控件的FillStyle属性赋值为0~7分别对应的填充样式状为:实心填充、透明填充、以水平线进行填充、以垂直线进行填充、向上对角线填充、向下对角线填充、交叉线填充、对角交叉线填充。
思考和习题
教
学
后
记
学科网(北京)股份有限公司
$$