版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章数组与过程
学习目标:
♦掌握数组和过程的概念
♦掌握数组的定义和应用
♦掌握Sub过程和Function过程的应用
♦掌握过程的参数传递与过程的作用域
♦了解Shell函数
第4章数组与过程
教学内容:
4.1数组
4.2过程
4.3Shell函数
4.1数组一数组的概念
♦数组用于保存大量的、逻辑上有联系的数据
♦数组的特点:
>数据中的元素在类型上是一致的
>数组元素在内存空间上是连续存放的
>数组元素的引用可通过下标进行
>数组在使用前必须要定义(声明)
返回目录
4.1数组一一维数组的定义和使用
1.数组的定义(声明)
Dim数组名([下界To]上界)As数据类型
例如:DimData(lTo40)AsInteger
A定义数组可以使用类型符
例,DimData%(lTo40)
A下界的默认值为0
例,DimSalary(lOOO)AsCurrency
>通过数组名和下标可引用数组中的元素
例,Data(25)=95
Forml.PrintData(25)
返回目录
4.1数组一一维数组的定义和使用
说明T:
♦数组定义后的初值:数值型数组各元素为0,逻辑型数组
各元素为False,字符串数组各元素为空串(心)。
♦可同时声明几个数组,用逗号分隔,例如
DimA%(10To100),B(800)AsLong
♦定义数组时,下标的下界和上界值只能是常数或常数表达
式。下例的定义是错误的
N=100:DimData(N)AsInteger
♦定义时,数组的上界值不得超出长整型范围,且数组的上
界值不得小于下界值。
返回目录
4.1数组一一维数组的定义和使用
说明-2:
♦数组的元素个数称为数组长度。
♦Lbound()>Ubound()函数可测定数组的下界与上界值
例如:PrivateSubForm_Click()・Form1,1□1x|
DimA%(12To24)1224
PrintLBound(A),UBound(A)
EndSub
♦用OptionBasen可设定数组的默认下界
>n的取值只能是0或1
A设定方法:在代码窗口的通用声明段中输入
OptionBase0或OptionBase1
返回目录
4.1数组一一维数组的定义和使用
返回目录
4.1数组一一维数组的定义和使用
说明:
A数组实际上是用一个变量名字代表一组数,这组数是
连续排列的,用顺序号作为下标区分各个数。
A数组下标是一个整型量,如果有小数则自动按四舍五
入取整。例如,Data(3.4)=3,而Data(3.5)=2。
>数组常见的错误:PrivateSubForm_Click()
DimTest%(3),1%
下标出界ForI=1To4
Test(I)=5-1:PrintTest(I)
Test(l)=4NextI・forml,1□!x||
EndSub
Test(2)=3
实时错误:
Test(3)=2下标越界
Test(4)超出定义
结束⑥“使同就;|帮助也)|
返回目录
4.1数组一一维数组应用例题
[例4.3]输出斐波那契级数的而20项
PrivateSubForm_Click()
DimF(20)AsInteger,IAsInteger
F⑴=1:F⑵=1悌一、第二项为1
ForI=3To20,第三项起每项为前二项之和
F(I)=F(I-2)+F(I-1)
NextIE争图聿建膻魂而也以」口」x]
ForI=1To20'在窗体上输出11235
PrintF(I);813213455
89144233377610
IfIMod5=0ThenPrint9871597258441816765
NextI
EndSub
返回目录
4.1数组一一维数组应用例题
[例4.41输入一组不重复的数据,找出最大值及其位置
PrivateSubForm_Click()
ConstLength=5,定义常量Length作为数组最大下标
DimTest%(Length),1%,Max%,L%
ForI=1ToLength,通过键盘输入给数组赋值
Test(I)=InputBox「输入第”&I&”个数据”)
NextI
Max=Test(l):L=1,设数组第一个元素为最大值
ForI=2ToLength
IfMaxvTest(I)Then,找到新的最大值,记录其值和位置
Max=Test(I)
L=I
EndIf
NextI最大值=99,位置是4
”最大值,位置是“&
MsgBoxx="&Max&”L?...■x.....,:
EndSub确7E
返回目录
4.1数组一一维数组应用例题
[例4.5]产生10个整数到数组中,将其顺序颠倒后输出
PrivateSubForm_Click()
ConstLength=10:DimD(Length)AsInteger,1%,Temp%
ForI=1ToLength,给数组赋值并输出
D(I)=14+1:PrintD(I);
NextI
Print:Print,换行
ForI=1ToLength/2咬换
Temp=D(I)
D(I)=D(Length-I+1)
D(Length-1+1)=Temp
NextI
ForI=1ToLength咬换后输出
PrintD(I);
NextI
EndSub
返回目录
4.1数组一一维数组应用例题
[例4.8]产生100个不重复的3位随机整数,
并按每行7列的格式输出
PrivateSubForm_Click()
DimData(lOO)AsInteger,1%,J%
RandomizeTimer,设置随机化种子,保证每组数据不重复
,ForI=1To100,循环产生100个数据
Data(I)=Int(Rnd()*900)+100
rForJ=1ToI-1,与已经产生的数据比较
IfData(I)=Data(J)Then,数据已存在则舍弃,重新产生
AJI=I.1
IExitFor,提前退出数据比较的循环
EndIf_
INextJ
(NextI
返回目录
4.1数组一一维数组应用例题
刈
Ini
7
2
7
6
8
0
8
6
3
7
6
86
39
956516
5
7
5
5
0
0
2
7
2
9
6
55
91
706241
6
2
6
2
4
1
9
0
5
7
7
37
92
722328
0
7
8
0
5
6
3
4
2
5
0
I=1:j=1
13
79
558795
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆人文科技学院《景观训练》2022-2023学年第一学期期末试卷
- 重庆人文科技学院《教师资格笔试与面试实训》2021-2022学年第一学期期末试卷
- 2021医院感控持续改进手册(护士版)
- 茶叶品牌定位问题研究报告
- 茶叶博览馆建设研究报告
- 重庆财经学院《土地管理学概论》2022-2023学年第一学期期末试卷
- 重庆财经学院《计算机组成原理》2021-2022学年期末试卷
- 茶厂投产运营方案
- 茶与酒的文化课程设计
- 策略模式论文研究报告
- 陕西2016-2020五年中考英语分题型考点统计
- 2024年上海市中考语文备考之150个文言实词刷题表格及答案
- 2024年陕煤集团招聘笔试参考题库含答案解析
- 小学生算24点题目及答案汇总
- 读后续写之自然灾害讲义-高考英语一轮复习
- 2003-2019年佛山市社保缴费比例和基数(无图片)
- 外购肉、蛋类进货查验记录表
- 家长会课件:四年级家长会语文老师课件
- 大客户战略:大客户全生命周期管理
- 数字经济与乡村振兴
- 水资源利用与保护智慧树知到课后章节答案2023年下广州大学
评论
0/150
提交评论