资源描述:
《第7章 数组例题汇总以及上机作业.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本章上机本章所有作业题,上机验证或编制调试实验8的案例3杨輝三角讲过的典型例题上机验证第七章数组1).可通过循环给数组元素赋初值Fori=1To10‘A数组的每个元素值为1A(i)=1Nexti2).数组的输入输入10个数,并存入到数组A中Fori=1To10A(i)=Val(InputBox(“输入A(”&i&“)的值”))Nexti上机一:编程完成一维数组的基本操作----输入输出及求最值3).求数组中最大元素及所在下标DimMaxAsInteger,iMaxAsIntegerMax=A(1):iMax=
2、1Fori=2To10IfA(i)>MaxThenMax=A(i)iMax=iEndIfNextiPrint"A("&iMax&")=";A(iMax)编程:将数组元素倒置Fori=1To102t=A(i)A(i)=A(10-i+1)A(10-i+1)=tNextI(演示)OptionExplicitConstNUM=60'声明代表班上学生人数的符号常量PrivateSubForm_Click()Dima(NUM)AsInteger,iAsIntegerDimSumAsInteger,AverAsSingl
3、e,NAsIntegerSum=0'给Sum赋初值Fori=1ToNUM'输入学生成绩,并求和a(i)=Val(InputBox("输入第("&i&")学生的成绩"))Sum=Sum+a(i)NextiAver=Sum/NUMN=0Fori=1ToNUM'统计高于平均成绩的人数Ifa(i)>AverThenN=N+1NextiPrint"全班平均成绩:"&Aver&"共有"&N&"高于平均成绩"EndSub编程求某班60个学生某门课程考试的平均成绩及高于平均成绩的学生人数。在上题中编程统计0~9,10~19,
4、20~29,….80~89,90~99分数段及100分的学生人。另用数组bn来存各分数段的人数,并用bn(0)存0~9分的人数,bn(1)存10~19分的人数,…bn(9)存90~99分的人数,bn(10)存100分的人数。OptionExplicitConstNUM=60'声明代表班上学生人数的符号常量PrivateSubForm_Click()Dima(NUM)AsInteger,iAsIntegerDimbn(0To10)AsInteger,kAsIntegerFori=1ToNUM'输入学生成绩,并求
5、和a(i)=InputBox("输入第("&i&")学生的成绩")Printa(i);k=Int(a(i)/10)bn(k)=bn(k)+1NextiPrintFori=0To9'打印输出各分数段的学生人数Print(i*10)&"~"&(i*10+9)&"的学生人数:"&bn(i)NextiPrintTab(10);"100学生人数:"&bn(i)EndSubFori=1Ton-1p=iForj=i+1TonIfa(p)>a(j)Thenp=jNextjt=a(i):a(i)=a(p):a(p)=tNext
6、i选择法排序(升序)的VB程序:思考:如果按降序排,程序如何修改?第五章数组编程对一维数组的数据排序习题用随机函数产生50个10~100的随机整数,并按由小到大的顺序打印出来。OptionExplicitOptionBase1PrivateSubForm_Click()DimiAsInteger,jAsInteger,tAsInteger,pAsIntegerConstN=50Dima(N)AsIntegerPrint"排序前数据:"Fori=1ToN'产生[10,99]之间的随机整数a(i)=Int(Rnd
7、*90)+10Printa(i);IfiMod10=0ThenPrint'每行打印10个元素NextiPrintFori=1ToN–1'排序p=iForj=i+1ToNIfa(p)>a(j)Thenp=jNextjt=a(i):a(i)=a(p):a(p)=t'交换数据NextiPrint"排序后数据:"Fori=1ToNPrinta(i);IfiMod10=0ThenPrint'打印换行NextiEndSubFori=1Ton-1Forj=1Ton-iIfa(j)>a(j+1)Thent=a(j):a(j)
8、=a(j+1):a(j+1)=tEndifNextjNexti冒泡法排序(升序)程序:演示第五章数组一维数组的应用——数据排序二维数组数据的输入ConstN=4,M=5,L=6Dima(1toN,1toM)AsInteger,i%,j%,k%1).给二维数组a输入数据的程序段如下:Fori=1to4Forj=1to5A(i,j)=Val(InputBox("a("&I&","&j&")=?"))Ne