八年级信息技术教案第六章 各就各位数组Word文档格式.docx
- 文档编号:6504254
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:9
- 大小:17.72KB
八年级信息技术教案第六章 各就各位数组Word文档格式.docx
《八年级信息技术教案第六章 各就各位数组Word文档格式.docx》由会员分享,可在线阅读,更多相关《八年级信息技术教案第六章 各就各位数组Word文档格式.docx(9页珍藏版)》请在冰点文库上搜索。
例如要求一个班50名学生的平均成绩:
下标变量Si用数组表示为:
S
、有关说明:
.数组与普通变量一样,用来存放数据;
.数组中的数据必须是同一类型;
2、数组与循环结合
fori=1to50
inputs
nexti
s=0
s=s+s
prints/50
end
二、数组的建立和引用
、数组的建立
.DIm&
lt;
数组名&
gt;
或DIm&
说明:
&
#61607;
一般情况下,下标值从0开始
如:
DImA即定义了a、a、…、a;
若要修改下标起始值,可用下面语句:
oPTIoNBASEN
oPTIoNBASE1
DIma
则定义了5个变量a、a、a、a、a;
若数组下标上界不超过10则可不必用DIm定义数组。
DIm&
下标值的范围:
-32768~32767
数组名与变量名的定义相同;
允许在同一模块中,数组名与变量名同名,它们不代表同一对象;
DIma
A=3
DIm语句中的上界可是常数或变量、表达式;
DIma
但变量值一定先赋值
定义全局数组
DImSHAREDa
用DIm语句可定义变量类型
变量&
AS&
类型&
其中&
是:
INTEGER、LoNG(长整型)、SINGLE(单精度型)、DoUBLE(双精度型)、STRING(字符串型);
但&
不能加类型定义符,如下写法是错误的:
DImA&
amp;
ASLoNG
在用DIm语句定义了一个变量类型后,该变量名后面加上类型定义符或不加类型定义符都是合法的,且代表同一个对象。
例如:
DImaASLoNG
a=123456
a&
=77777
printa,a&
END
运行结果如下:
7777777777
但程序中不能再用a作其它类型的变量名。
2、数组的引用
引用数组元素(下标变量),即在括弧中指定下标;
在程序中,数组与其它变量的使用相同,即可参与运算,可以被赋值;
在引用数组时,数组名、类型、维数以及下标的范围,应与定义时一致;
同一模块中,数组和变量可同名,但数组与数组不能同名;
下列情况是不允许的:
DIma 或 DIma
DIma%
3、静态数组和动态数组
静态数组——建立数组后,其维数和大小不能改变;
动态数组——在程序执行教程中,可改变大小或者被释放;
QBASIc规定:
在DIm语句中用常数指定下、上界的数组为静态数组,如果用变量(或表达式)指定上下界的数组为动态数组。
.重定义语句
REDIm&
DImS(20),X(20,30)
……
√REDImS
×
REDImX
只改变同名数组的大小,但不能改变维数;
.释放数组语句
ERASE&
释放数组所占据的空间;
例1:
释放和重定义数组:
n=10
FoRi=1Ton
a=i
PRINTa;
NEXTi
ERASEa
REDIma
FoRi=1To16
.如果不使用ERASE语句释放数组,不能用DIm语句对同一个数组两次定义;
.用REDIm可改变数组的大小,而不必先用ERASE语句释放数组;
.无论用DIm或REDIm定义一个与原来数组同名的数组,可以改变数组中各维的上下界,而不能改变数组的维数。
.数组上、下界函数
LBoUND——下界函数
UBoUND——上界函数
例:
INPUTn,m
FoRi=LBoUNDToUBoUND
DImb
FoRi=1ToUBoUND
FoRj=1ToUBoUND
b=10*i+j
PRINTb;
NEXTj
三、数组的应用
第二节一字排开-----一维数组
、一维数组
只有一个下标的数组。
.数据统计
例:
输入n个学生的成绩,求平均成绩。
oPTIoNBASE1
INPUT"
numberofstudentsis:
"
;
n
DIms
FoRi=1ton
INPUTs
sum=sum+s
aver=sum/n
PRINT"
aver="
aver
输入n个学生的学号和成绩,要求输出平均成绩和高于平均分的学生学号及成绩。
DImnum,score
INPUTnum,score
sum=sum+score
平均分是:
高于平均分的学生有:
学号"
"
成绩"
IFscore&
averTHENPRINTnum,score
、数据排序
从键盘输入10个数。
要求按由小到大的顺序将它们打印出来;
#8226;
比较交换法
a1、a2、a3、a4、a5、a6、a7、a8、a9、a10
第一次:
a1与a2、a3、a4、a5、a6、a7、a8、a9、a10比较
第二次:
a2与a3、a4、a5、a6、a7、a8、a9、a10比较
第三次:
a3与a4、a5、a6、a7、a8、a9、a10比较
第四次:
a4与a5、a6、a7、a8、a9、a10比较
第五次:
a5与a6、a7、a8、a9、a10比较
第六次:
a6与a7、a8、a9、a10比较
第七次:
a7与a8、a9、a10比较
第八次:
a8与a9、a10比较
第九次:
a9与a10比较
FoRi=1To10
INPUTa
FoRi=1To9
FoRj=i+1To10
ifa&
aTHENSwAPa,a
6.
选择法
k=i
aTHENk=j
ifk&
&
iTHENSwAPa,a
END .数据查找(检索)例:
设有n个学生,每个学生的数据包括:
学号、姓名、性别、年龄、平均分等;
要求输入一个学号,程序输出该学生的所有数据。
顺序查找法
假设:
num为学生学号,nam$为姓名,num为查找对象。
SUBSearch
IFnum=numTHEN
PRINT"
num"
num
name"
nam$
EXITFoR
ENDIF
IFi&
nTHENnum;
notfound"
ENDSUB
折半查找法(二分查找法);
对按一定规律(由小到大或由大到小)排列好的数据进行检索;
假设:
num为按从小到大排列的学生学号,nam$为姓名,num为查找对象。
SUBSearch
top=1
bot=n
find=0
Do
mid=INT/2)
find=1
ELSEIFnum&
numTHEN
bot=mid-1
top=mid+1
LooPUNTILoR)
IFfind=0THENnum;
2、二维数组
矩阵的表示:
aij——双下标变量a→二维数组
数组定义:
DImA
a→b
输出魔阵——每行、每列和对角线之和均相等。
排列规律:
、先将“1”放在第一行当中;
、从“2”开始到N*N止,各数中每一个数存放的行比前一个数的行数减1,列数加1;
、如果上一个数的行数为1,则下一个数的行数为n;
、当上一个数的列数为n时,下一个数的列数为1,行数减1;
、如下一个数应放的位置已被其它数占据,则下一个数放在上一个数的下面。
四、过程中的数组参数
、作为下标变量
子程序定义:
SUBA
调用:
DImT
callA,t)
2、作为数组:
定义:
调用cALLB,g)
将主程序中的P、G传给子程序中的a,b数组传递采取“地地传递”方式。
即子程序中对形象参值的修改,将会改变实参值
教学后记:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 八年级信息技术教案第六章 各就各位数组 年级 信息技术 教案 第六 各就各位 数组