数组应用.docx
《数组应用.docx》由会员分享,可在线阅读,更多相关《数组应用.docx(8页珍藏版)》请在冰豆网上搜索。
![数组应用.docx](https://file1.bdocx.com/fileroot1/2023-2/21/2bd8ffa4-7d36-49a3-8621-69b542aecaa6/2bd8ffa4-7d36-49a3-8621-69b542aecaa61.gif)
数组应用
实验七数组应用
一、实验目的
1.掌握一维数组的用法
2.掌握二维数组的用法
3.掌握控件数组的用法
二.、实验内容
1、随机输入20个3位整数,并用冒泡法对其进行排序(可参照例7.12)
程序:
PrivateSubCommand1_Click()
Dimx%,c(1To20)AsInteger,a%,i%,t%,n%
n=0
Forx=1To20
c(x)=InputBox("请输入第"&x&"个3位数",输入3位数)
Ifc(x)>999Orc(x)<100Then
a=MsgBox("请输入三位整数",48,"输入错误,请重新输入")
c(x)=InputBox("请输入第"&x&"个3位数",输入3位数)
EndIf
n=n+1
Ifn=6Then
Text1.Text=Text1.Text&""&vbCrLf
Text1.Text=Text1.Text&""&c(x)
n=0
Else
Text1.Text=Text1.Text&""&c(x)
EndIf
Next
Forx=1To20
Fori=1To19
Ifc(i)>c(i+1)Then
t=c(i):
c(i)=c(i+1):
c(i+1)=t
EndIf
Next
Next
Fori=1To20
IfiMod7=0Then
Text2.Text=Text2.Text&""&vbCrLf
Text2.Text=Text2.Text&""&c(i)
Else
Text2.Text=Text2.Text&""&c(i)
EndIf
Next
EndSub
运行结果:
2、输入两个可以相乘的矩阵,计算两个矩阵的乘法
程序:
运行结果:
3、用控件数组实现简单计算器的编程(可以参考例7.14)
程序:
Dimops1#,ops2#
DimresAsBoolean
Dim∏AsDouble
PrivateSubclear_Click()
dataout.Caption=""
EndSub
PrivateSubForm_Load()
res=False
EndSub
PrivateSubnumber_Click(I1AsInteger)
∏=3.141592654
IfNotresThen
IfI1=10Then
dataout.Caption=dataout.Caption&"."
Else
IfI1=11Then
dataout.Caption=3.141592654
Else
dataout.Caption=dataout.Caption&I1
EndIf
EndIf
Else
IfI1=10Then
dataout.Caption=0#
Else
IfI1=11Then
dataout.Caption=3.141592654
Else
dataout.Caption=I1
res=False
EndIf
EndIf
EndIf
EndSub
PrivateSuboperator_Click(I2AsInteger)
ops1=dataout.Caption
op=I2
dataout.Caption=""
EndSub
PrivateSuboperator1_Click(I3AsInteger)
Dimop1AsByte
ops1=dataout.Caption
op1=I3
SelectCaseop1
Case0
dataout.Caption=Int(ops1)
Case1
dataout.Caption=Sqr(ops1)
Case4
dataout.Caption=Log(ops1)
Case9
dataout.Caption=ops1^2
Case7
dataout.Caption=ops1^3
Case6
dataout.Caption=Abs(ops1)
Case2
dataout.Caption=Sin(∏/180*ops1)
Case5
dataout.Caption=Cos(∏/180*ops1)
Case8
dataout.Caption=Tan(∏/180*ops1)
Case3
dataout.Caption=Int(Rnd*100)+1
Case10
dataout.Caption=ops1\ops2
Case11
dataout.Caption=ops1Modops2
EndSelect
res=ture
EndSub
PrivateSubresult_Click()
∏=3.141592654
ops2=dataout.Caption
SelectCaseop
Case0
dataout.Caption=ops1+ops2
Case1
dataout.Caption=ops1-ops2
Case2
dataout.Caption=ops1*ops2
Case3
dataout.Caption=ops1/ops2
EndSelect
res=ture
EndSub
运行结果:
三、思考题
1、选择法排序和冒泡法排序的区别,其各自的关键代码是什么
2、建立控件数组的方法
3、可调数组和普通数组的定义有什么不同
4、数组的下界默认为多少,如何改变数组的默认下界,如何获得数组的上下界