欢迎来到天天文库
浏览记录
ID:41323169
大小:362.00 KB
页数:31页
时间:2019-08-22
《VB 第十九讲1》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第十九讲数组应用VisualBasic程序设计教程内蒙古科技大学工程训练中心韩艳本讲主要内容一维数组的应用ptc.imust.cn工程训练中心一、常用算法与数据结构1、分类统计例:利用一维数组统计一个班学生的成绩在0-9、10-19、20-29、…、90-99以及100各分数段的人数分布解题思路:定义一个有11个元素的一维数组a(0to10),a(0):0-9分的学生人数;a(1):10-19分的学生人数;a(2):20-29分的学生人数;…a(9):90-99分的学生人数;a(10):100分的学生人数;根据学生成绩score,计算
2、int(score/10),将其分类到相应的数组元素中。ptc.imust.cn工程训练中心一、常用算法与数据结构2、大量数据的输入和编辑例:输入一个4×5的二维整数数组,输出数组元素的平均值及该数组。解题思路:给二维数据元素赋值、显示,一般需要使用用二层For循环,外层循环控制第一维数组元素,内层循环控制第二维数组元素。Dima(1To4,1To5),i,jAsIntegerDimaverage,sumAsIntegersum=0Fori=1To4Forj=1To5a(i,j)=Val(InputBox("请输入a("&Str(i)
3、&","&Str(j)&")的值"))sum=sum+a(i,j)NextNextaverage=sum/20Print"数组元素的平均值是:";averageFori=1To4Forj=1To5Printa(i,j);NextPrintNextptc.imust.cn工程训练中心一、常用算法与数据结构3、寻找最大值/最小值例:求数组中最大元素和所在下标及各元素之和。解题思路:首先将数组第一个元素的赋给max变量,而后从数组的第二个元素开始依次同max比较,并将大的值赋给max,最后,max的值为数组中最大的值。DimmaxAsInt
4、eger,imaxAsInteger,sumAsIntegerDimiAsIntegerDima(1To10)AsIntegerFori=1To10a(i)=Val(InputBox("请输入a("&i&")的值(共10个):"))'为数组赋值Nextmax=a(1)'将数组第一个元素的值赋给Maximax=1:sum=a(1)'将数组第一个元素的值赋给sumFori=2To10'从数组的第二个值开始依次和max相比,将大的值赋给maxsum=sum+a(i)Ifa(i)>maxThenmax=a(i):imax=iEndIfNext
5、Print"最大值:a("&imax&")=";a(imax)Print"总和为:";sumptc.imust.cn工程训练中心一、常用算法与数据结构4、数组排序排序就是将一组数按递增或递减的次序重新排列。排序的方法:选择法、冒泡法、插入法和合并排序。1、选择法排序算法描述:设有n个数的数组a(1),a(2),…a(n),要求按递增的次序排列:首先设变量k用于存放当前最小数的下标,然后按下列步骤进行:⑴从n个数中选出最小元素的下标,然后将最小数与第一个数交换位置,即a(k)与a(1)互换;■先将a(1)与a(2)进行比较,k的初值为1
6、;■若a(2)7、轮余下的n-1个数中的最小数■将a(k)与a(2)互换;⑶继续进行第三轮、第四轮、..、直到第n-1轮,余下的a(n)就是n个数中的最大值;至此,n个数已从小到大顺序存放到数组a中。ptc.imust.cn工程训练中心一、常用算法与数据结构7.6.4数组排序1、选择法排序819761A(1)A(2)A(3)A(4)A(5)A(6)原始值第一轮(1)819761k=1,a(1)和a(2)相比较88197611a(2)8、排序1、选择法排序A(1)A(2)A(3)A(4)A(5)A(6)第一轮(3)819761819761第一轮排序结果1k=2,a(2)与a(1)交换ptc.imust.cn工程训练中心一、常用算法与数据结构4、数组排序1
7、轮余下的n-1个数中的最小数■将a(k)与a(2)互换;⑶继续进行第三轮、第四轮、..、直到第n-1轮,余下的a(n)就是n个数中的最大值;至此,n个数已从小到大顺序存放到数组a中。ptc.imust.cn工程训练中心一、常用算法与数据结构7.6.4数组排序1、选择法排序819761A(1)A(2)A(3)A(4)A(5)A(6)原始值第一轮(1)819761k=1,a(1)和a(2)相比较88197611a(2)8、排序1、选择法排序A(1)A(2)A(3)A(4)A(5)A(6)第一轮(3)819761819761第一轮排序结果1k=2,a(2)与a(1)交换ptc.imust.cn工程训练中心一、常用算法与数据结构4、数组排序1
8、排序1、选择法排序A(1)A(2)A(3)A(4)A(5)A(6)第一轮(3)819761819761第一轮排序结果1k=2,a(2)与a(1)交换ptc.imust.cn工程训练中心一、常用算法与数据结构4、数组排序1
此文档下载收益归作者所有