信息技术教案

八年级信息技术教案:数组(2)

时间:2013-07-20 来源:无忧教育网 编辑:丫丫 点击:

八年级信息技术教案:数组(2)

§ 同一模块中,数组和变量可同名,但数组与数组不能同名;

下列情况是不允许的:

DIM a(10,10)   或  DIM a(50,50)

DIM a(15) DIM a%(15)

3、静态数组和动态数组

静态数组——建立数组后,其维数和大小不能改变;

动态数组——在程序执行教程中,可改变大小或者被释放;

QBASIC规定:在DIM 语句中用常数指定下、上界的数组为静态数组,如果用变量(或表达式)指定上下界的数组为动态数组。

(1).重定义语句

REDIM <数组名>(上界)

如:DIM S(20),X(20,30)

……

√REDIM S(50)

×REDIM X(30)

只改变同名数组的大小,但不能改变维数;

(2).释放数组语句

ERASE <数组名>

释放数组所占据的空间;

例1:释放和重定义数组:

n=10

DIM a(n)

FOR i=1 TO n

a(i)=i

PRINT a(i);

NEXT i

PRINT

ERASE a

REDIM a(16)

FOR i=1 TO 16

a(i)=i

PRINT a(i);

NEXT i

PRINT

END

说明:

.如果不使用ERASE语句释放数组,不能用DIM语句对同一个数组两次定义;

.用REDIM可改变数组的大小,而不必先用ERASE语句释放数组;

.无论用DIM或REDIM定义一个与原来数组同名的数组,可以改变数组中各维的上下界,而不能改变数组的维数。

(3).数组上、下界函数

LBOUND(<数组名>,<维数>)——下界函数

UBOUND(<数组名>,<维数>)——上界函数

例:

INPUT n,m

DIM a(n TO m)

FOR i=LBOUND(a,1) TO UBOUND(a,1)

a(i)=i

PRINT a(i);

NEXT i

PRINT

DIM b(10,15)

FOR i=1 TO UBOUND(b,1)

FOR j=1 TO UBOUND(b,2)

b(i,j)=10*i+j

PRINT b(i,j);

NEXT j

NEXT i

PRINT

END

三、数组的应用

第二节 一字排开-----一维数组

1、一维数组

只有一个下标的数组。

(1).数据统计

例: 输入n个学生的成绩,求平均成绩。

OPTION BASE 1

INPUT "number of students is:";n

DIM s(n)

FOR i=1 to n

INPUT s(i)

sum=sum+s(i)

NEXT i

aver=sum/n

PRINT "aver=";aver

END

例: 输入n个学生的学号和成绩,要求输出平均成绩和高于平均分的学生学号及成绩。

OPTION BASE 1

INPUT "number of students is:";n

DIM num(n),score(n)

FOR i=1 to n

INPUT num(i),score(n)

sum=sum+score(i)

NEXT i

aver=sum/n

PRINT

PRINT "平均分是:";aver

PRINT

PRINT "高于平均分的学生有:"

PRINT "学号","成绩"

FOR i=1 TO n

IF score(i)>aver THEN PRINT num(i),score(i)

NEXT i

  [论文开题报告范文]   [中国大学排名]   [财务工作计划专题]   [诗词专题]

本文地址:http://www.edu399.com/jiaoan/xxjs/64611.html
本文标题:八年级信息技术教案:数组(2)
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)