欢迎来到天天文库
浏览记录
ID:40711131
大小:343.18 KB
页数:11页
时间:2019-08-06
《VB实验E_数组和自定义类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验E数组和自定义类型一、实验目的1.掌握数组的声明、数组元素的引用。2.掌握固定长度数组和动态数组的使用差别。3.掌握数组常用的操作和常用算法。4.掌握列表和组合框的使用。5.掌握自定义类型及数组的使用。二、实验内容1.随机产生30~100(包括30,100)的10个正整数,求最大值、最小值、平均值,并显示整个数组的值和结果,如图E11所示。代码:PrivateSubForm_Click()Dimi%,s%(1To10),max%,min%,avg!Fori=1To10s(i)=Int(Rnd*71+30)Nextimax=s(1)min=s(1)avg=s(1)
2、Fori=2To10Ifs(i)>maxThenmax=s(i)Ifs(i)3、输入学生的成绩"))n=s(i)5PrintString(n,"◆");s(i)NextiEndSub3.随机产生20个学生的成绩,统计各分数段人数。即0~59,60~69,70~79,80~89,90~100,并显示结果。产生的数据在picture1显示,统计结果在picture2显示,如图E3所示。代码:Dimmark%(19),i%PrivateSubCommand1_Click()Me.Picture1.ClsFori=0To19mark(i)=Int(Rnd*101)Me.Picture1.Printmark(i);If(i+1)Mod5=0ThenMe4、.Picture1.PrintNextiEndSubPrivateSubCommand2_Click()Me.Picture2.ClsDims%(9)Fori=0To19k=mark(i)10SelectCasekCase0To5s(5)=s(5)+1Case9To10s(9)=s(9)+1Case6To8s(k)=s(k)+1EndSelectNextiFork=5To9Ifs(k)<>0ThenMe.Picture2.Print"s(";k;")的人数有";s(k);"个"EndIfNextkEndSub4.随机产生10个2位数,按从大到小递减的顺序排列,并显5、示排序结果。代码:PrivateSubForm_Click()Dims%(9)Print"排序前",Fori=0To9s(i)=Int(Rnd*90+10)Prints(i);NextiForn=0To8nmax=nForm=n+1To9Ifs(m)>s(nmax)Thennmax=mNextmt=s(nmax):s(nmax)=s(n):s(n)=tNextnPrintPrint"排序前",Fori=0To9Prints(i);NextiEndSub5.参照教材例5.3,在通用声明段声明两个数组,利用随机函数形成如下两个数组:60575052121111131136、1A=64366639,B=1331161321396669534111110313112451574464123109113133要求:1.以下三角形显示A数组、上三角形式显示B数组。2.求A数组主对角线元素之和和B数组副对角线元素之和。代码:Dima%(3,3),b%(3,3)PrivateSubCommand2_Click()Me.Picture2.ClsFori=0To3Forj=iTo3Me.Picture2.PrintTab(6*j);b(i,j);NextjMe.Picture2.PrintNextiEndSubPrivateSubCommand3_C7、lick()Me.Picture3.Clssa=0Fori=0To3sa=sa+a(i,i)Nextisb=0Fori=0To3sb=sb+b(i,3-i)NextiMe.Picture3.Print"A数组主对角线元素和为:";saMe.Picture3.Print"B数组主对角线元素和为:";sbEndSubPrivateSubForm_Load()Fori=0To3Forj=0To3a(i,j)=Int(Rnd*36+35)b(i,j)=Int(Rnd*41+100)NextjNextiEndSubPrivateSubCommand1_Click()Me.
3、输入学生的成绩"))n=s(i)5PrintString(n,"◆");s(i)NextiEndSub3.随机产生20个学生的成绩,统计各分数段人数。即0~59,60~69,70~79,80~89,90~100,并显示结果。产生的数据在picture1显示,统计结果在picture2显示,如图E3所示。代码:Dimmark%(19),i%PrivateSubCommand1_Click()Me.Picture1.ClsFori=0To19mark(i)=Int(Rnd*101)Me.Picture1.Printmark(i);If(i+1)Mod5=0ThenMe
4、.Picture1.PrintNextiEndSubPrivateSubCommand2_Click()Me.Picture2.ClsDims%(9)Fori=0To19k=mark(i)10SelectCasekCase0To5s(5)=s(5)+1Case9To10s(9)=s(9)+1Case6To8s(k)=s(k)+1EndSelectNextiFork=5To9Ifs(k)<>0ThenMe.Picture2.Print"s(";k;")的人数有";s(k);"个"EndIfNextkEndSub4.随机产生10个2位数,按从大到小递减的顺序排列,并显
5、示排序结果。代码:PrivateSubForm_Click()Dims%(9)Print"排序前",Fori=0To9s(i)=Int(Rnd*90+10)Prints(i);NextiForn=0To8nmax=nForm=n+1To9Ifs(m)>s(nmax)Thennmax=mNextmt=s(nmax):s(nmax)=s(n):s(n)=tNextnPrintPrint"排序前",Fori=0To9Prints(i);NextiEndSub5.参照教材例5.3,在通用声明段声明两个数组,利用随机函数形成如下两个数组:6057505212111113113
6、1A=64366639,B=1331161321396669534111110313112451574464123109113133要求:1.以下三角形显示A数组、上三角形式显示B数组。2.求A数组主对角线元素之和和B数组副对角线元素之和。代码:Dima%(3,3),b%(3,3)PrivateSubCommand2_Click()Me.Picture2.ClsFori=0To3Forj=iTo3Me.Picture2.PrintTab(6*j);b(i,j);NextjMe.Picture2.PrintNextiEndSubPrivateSubCommand3_C
7、lick()Me.Picture3.Clssa=0Fori=0To3sa=sa+a(i,i)Nextisb=0Fori=0To3sb=sb+b(i,3-i)NextiMe.Picture3.Print"A数组主对角线元素和为:";saMe.Picture3.Print"B数组主对角线元素和为:";sbEndSubPrivateSubForm_Load()Fori=0To3Forj=0To3a(i,j)=Int(Rnd*36+35)b(i,j)=Int(Rnd*41+100)NextjNextiEndSubPrivateSubCommand1_Click()Me.
此文档下载收益归作者所有