ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:19.96KB ,
资源ID:7983921      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7983921.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(23 数组.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

23 数组.docx

1、23 数组2.3 数组练习一、选择题1、在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1_Click() Dim array1(10,10) As Integer Dim i,j AS Integer For i=1 To 3 For j=2 To 4 array1(i,j)=i+j Next j Next i Text1.Text=array1(2,3)+array1(3,4)End Sub程序运行后,单击命令按钮,在文本框中显示的值是(A)A、12 B、13 C、14 D、15提示:即把下标相加赋值

2、勤=给这个对应的数组。2、在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:Private Sub Command1_Click() Dim i AS Integer,j AS Integer Dim a(10,10) As Integer For i=1 To 3 For j=1 To 3 a(i,j)=(i1)*3+j Print a(i,j); Next j Print Next IEnd Sub程序运行后,单击命令按钮,窗体上显示的是(D)A、1 2 32 4 63 6 9B、2 3 43 4 54 5 6C、1 4 72 5 83 6 9D、1 2 34 5 67 8

3、 93、设有如下程序:Option Base 0Private Sub Form_Click() Dim a Dim i AS Integer a=Array(1,2,3,4,5,6,7,8,9) For i=0 To 3 Print a(5i); Next End Sub程序运行后,单击窗体,则在窗体上显示的是(C)A、4 3 2 1 B、5 4 3 2 C、6 5 4 3 D、7 6 5 44、在窗体上画一个命令按钮,名称为Command1,然后编写如下事件过程:Option Base 0Private Sub Command1_Click()Dim city As Variantcity

4、=Array(北京,上海,天津,重庆)Print city(1)End Sub程序运行后,如果单击命令按钮,则在窗体上显示的内容是(D)A、空白 B、错误信息 C、北京 D、上海5、设在窗体上有一个名称为Command1的命令按钮,并有以下事件过程:Private Sub Command1_Click()Static b As Variantb=Array(1,3,5,7,9)End Sub此过程的功能是把数组b中的5个数逆序存放(即排列为9,7,5,3,1)。为实现此功能,省略号处的程序段应该是(C)A、 For i=0 To 512tmp=b(i)b(i)=b(5i1)b(5i1)=tmp

5、NextB、For i=0 To 5tmp=b(i)b(i)=b(5i1)b(5i1)=tmpNextC、For i=0 To 52tmp=b(i)b(i)=b(5i1)b(5i1)=tmpNextD、For i=1 To 52tmp=b(i)b(i)=b(5i1)b(5i1)=tmpNext 6、在窗体上画一个名称为Command1的命令按钮,然后编写如下代码:Option Base 1Private Sub Command1_Click()d = 0c = 10x = Array(10, 12, 21, 32, 24)For i = 1 To 5 If x(i) c Then d = d

6、+ x(i) c = x(i) Else d = dc End IfNext iPrint dEnd Sub程序运行后,如果单击命令按钮,则在窗体上输出的内容为(C)。A、89 B、99 C、23 D、77 7、以下有关数组定义的语句序列中,错误的是(D)A、Static arr1(3)arr1(1) = 100arr1(2) = Helloarr1(3) = 123.45B、Dim arr2() As IntegerDim size As IntegerPrivate Sub Command2_Click()size = InputBox(输入:)ReDim arr2(size)End Su

7、bC、Option Base 1Private Sub Command3_Click()Dim arr3(3) As IntegerEnd SubD、Dim n As IntegerPrivate Sub Command4_Click()Dim arr4(n) As IntegerEnd Sub 8、下面的语句或方法,错误的有(C)个(其中m和n 都为integer型变量) (1)dim arty(m,n) as integer (2)n=32764+5 (3)print A=A+B;A+B (4)Chdrive c: A、1 B、2 C、3 D、4 提示:(1)定义数组时的上下界必须确定值(

8、2)print语句不能打印关系式,可以打印表达式,(3)chdrive语句的参数是一个字符串型的参数,例如:chdrive d010705、下列程序打印结果为(A)。Private Sub Command1_Click()Dim a(5) As String Dim b As IntegerDim i As IntegerFor i=0 to 5 a(i)=i+1 Print a(i);Next iEnd SubA、123456 B、6 C、1 2 3 4 5 6 D、0提示:字符串输出没有正负号,字符之间没有空格,数字有正负号,字符之间有空格。9、以下程序的输出结果是(A)option ba

9、se 1private sub command1_click()dim a(10),p(3) as integerk=5for i=1 to 10 a(i)=inext ifor i=1 to 3 p(i)=a(i*i)next ifor i=1 to 3 k=k+p(i)*2next iprint kend subA、33 B、28 C、35 D、3710、在窗体上添加一个命令按钮,名为command1,然后为该命令按钮编写如下事件过程,该过程执行结果为(B)option base 1private sub command1_click( )dim a as varianta=array(1

10、,2,3,4)j=1for i=4 to 1 step 1 s=s+a(i)*j j=j*10next iprint send subA、4321 B、1234 C、34 D、12提示:本题的难点是数组在循环中的计算。11、在窗体上画一个名称为text1的文本框和一个名称为command1的命令按钮,然后编写如下事件过程:private sub command1_click()dim array1(10,10) as integerdim i,j as integerfor i=1 to 3 for j=2 to 4 array1(i,j)=i+j next jnext itext1.text

11、=array1(2,3)+array1(3,4)end sub程序运行后,单击命令按钮,在文本框中显示的值是(A)A、12 B、13 C、14 D、1512、在窗体上添加一命令按钮,其名为command1,然后编写代码如下:option base 1private sub command1_click()dim arr(4) as integerdim arr1(4) as integern=3for i=1 to 4 arr(i)=i arr1(n)=2*n+inext iprint arr1(n);arr(n)end sub程序的运行结果为(C)A、3 11 B、11 3 C、10 3 D

12、、3 13提示:本题难点是循环体内的变量赋值。arr(3)=3比较容易理解,只是arr1(3)在四次循环中最后的结果替代了前面的值一,即arr1(3)=2*3+4=1013、dim A(11 to 30)所定义的数组有(B )个元素A、11 B、20 C、30 D、330提示:数组的元素个数为(上界下界+1)14、下列事件的执行结果是(C)Private Sub Command1_Click()Dim a(5) As IntegerDim k As IntegerDim total As Integera(1) = 2a(2) = 5a(3) = 4a(4) = 10a(5) = 6For k

13、 = 1 To 5 total = total + a(k)Next kPrint totalEnd SubA、10 B、15 C、27 D、3515、下列程序的输出结果是(B)Private Sub Command1_Click()Dim a(5,5)For i = 1 To 3 For j = 1 To 4 a(i, j) = i * j Next jNext iFor n = 1 To 2 For m = 1 To 3 Print a(m, n); ; Next mNext nEnd SubA、2 4 6 1 2 3 B、1 2 3 2 4 6 C、1 2 3 4 5 6 D、6 5 4

14、 3 2 116、下列程序的输出结果是(C)Option Base 1Private Sub Command1_Click()a = Array(237, 126, 87, 48, 498)m1 = a(1)m2 = 1For i = 2 To 5 If a(i) m1 Then m1 = a(i) m2 = i End IfNext iPrint m1, m2End SubA、48 42 B、37 14 C、98 54 D、98 417、程序最后的结果是(D)Option Base 1Private Sub Command1_Click()Dim a As Varianta = Array(

15、1, 2, 3, 4)j = 1For i = 4 To 1 Step 1 s = s + a(i) * j j = j * 10Next iPrint sEnd SubA、4321 B、12 C、34 D、123418、有下列程序:private sub command1_click() dim myweek,myday myweek=array(Mon,Tue,Wed,Thu,Fri,Sat,Sun) myday=myweek(2) myday=myweek(4) Msgbox mydayend sub运行后,弹出的消息窗口显示的是(A)A、 FriB、 TueC、WedD、Thu提示:数

16、组下界没有用option base 1 ,说明其下界为0,所以myweek(4)为数组中第5个字符。myweek(2)中的数据被myweek(4)覆盖了二、填空题:1、设有程序:Option Base 1Private Sub Command1_Click() Dim arr1, Max as Integer arr1 = Array(12, 435, 76, 24, 78 , 54, 866, 43) Max = arr1(1) For i = 1 To 8 If arr1(i) Max Then Max=arr1(i) Next i Print 最大值是: ; MaxEnd Sub以上程序

17、的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。2、以下程序打印出两个矩阵,阅读程序,并在 处填上正确内容 1 2 3 4 5 6 7 8 9 9 8 7 6 5 4 3 2 1private sub command1_click() dim b(3,3) for i=1 to 3 for j=1 to 3 k=k+1 b(i,j)=k print b(i,j); next j print next i for i= 3 to 1 step 1 print for j= 3 to 1 step 1 print b(i,j); next j ne

18、xt iend sub提示:填空10和填空12的print语句起换行作用, 填空11使数组的行逆序显示,填空13控制矩阵中同一行的元素按逆序显示。空打印print操作是换行。3、在程序中,关于数组的说明语句只有一条dim a(100),则数组a包括了 101 个元素,数组的下标下界为 0 提示:在vb中,如果不指明数组下标的下界则缺省数组的下标的下界为0。4、下列程序运行后,在窗口中显示_50_Private Sub Command1_Click() Dim a(100) For k = 1 To 100 a(k) = 2 * k Next k Print a(a(13) 1)End Sub

19、5、以下程序完成的功能是:单击命令按钮,显示如图所示矩阵。请将程序中的_处补充完整。Private Sub Command1_Click() Dim a(5, 5) For i = 1 To 5: a(1, i) = _ i _: Next For i = 2 To 5 For j = 1 To 4 a(i, j) = a(_i1,j+1_) Next j a(i, j) = a(i 1, 1) Next i For i = 1 To 5 For j = 1 To 5 Print a(i, j); Next j Print Next iEnd Sub6、以下是产生100个在100100之间的各

20、不相同的随机整数的程序.填写完整.Private Sub Command1_Click() Dim b(100) For j = 1 To 100 Do If Rnd 0.5 Then y = 1 Else _y=1 _ b(i) = y * Int(Rnd * 101) Print b(i) Next i Max = _b(1)_ For i = 2 To 10 If b(i) Max Then Max = b(i) Next i Print 最大值为; _ Max _End Sub.F. 8、素数是除了能被1和它自己整除以外,不能别其他任何数整除的数.下面的代码是求100150之间的素数并

21、输出,每行输出4个数据.填空.输出结果为 101 103 107 109 113 127 131 137 139 149Private Sub Command1_Click() Dim m(100) n = 0 For a = _ 100 to 150_ flag = 0 For i = 2 To Sqr(a) If a / i = Int(a / i) Then flag = 1 Next i If flag = 0 Then n = n + 1 _ m(n)=a _ End If Next a For i = 1 To n If _ i/4=int(i/4)或 i Mod 4 = 0 _

22、Then Print m(i) Else Print m(i); End If Next iEnd Sub9、要打印100个500500之间不同的随机整数,并找出第几个是最大的.填写代码Private Sub Command1_Click() Dim b(100) For j = 1 To 100 x = Rnd If x 0.5 Then y = 1 Else y = 1 b(j) = y * Int(Rnd * 501) flag = 0 k = 1 While flag = 0 And k = j 1 If b(j) b(k) Then _ flag=1_ k = k + 1 End I

23、f Wend Print b(j) Next j Print p = 1 Max = _ b(1) _ For n = 2 To 100 If b(n) Max Then Max = b(n) p = _ n _ End If Next n Print 最大数是; Max Print 位置在第; p; 个End Sub10、已知数组A(4,4),各个元素在程序运行时被赋值并显示,形成四阶方阵.填写代码,使产生一个转置方阵,让放在A中,并显示出来.例如: 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 Private

24、 Sub Command1_Click() Dim a(4, 4) For k = 1 To 4 For j = 1 To 4 a(k, j) = j Print a(k, j); Next j Print Next k Print For k = 2 To 4 For j = 1 To _k _ t = a(j, k) a(j, k) = _ a(k,j) _ a(k, j) = t Next j Next k For k = 1 To 4 Print a(k, 1); a(k, 2); a(k, 3); a(k, 4) Next kEnd Sub11、下面程序运行后,输出的结果是如下的矩阵

25、: 4 7 10 5 8 11 6 9 12请在程序 处填入正确的内容。Private Sub Command1_Click() Dim a(3, 3) For j = 1 To 3 For k = 1 To 3 a(j, k) = j+k*3 Print a(j, k); Next k Print Next jEnd Sub12、下面程序的功能是产生100个小于1000(不含1000)的随机正整数,并统计其中5的倍数所占比例,但程序不完整,请在 处把程序补充完整。Private Sub Command1_Click() Dim a(100) For j = 1 To 100 a(j)= In

26、t(Rnd * 999 + 1)或Int(Rnd * 999 )+ 1 if a(j) Mod 5=0 then k=k+1 Print a(j) Next j Print Print k / 100End Sub13、窗体中添加一个命令按纽,并编写如下程序代码:Private Sub Command1_Click() k = 0 For j = 1 To 2 For i = 1 To 3 k = i + 1 Next i For i = 1 To 7 k = k + 1 Next i Next j MsgBox kEnd Sub程序运行后,消息对话框中显示 11 。14、添加一个命令按纽,并

27、编写如下代码。已知程序的运行结果如下矩阵,请在填空 填上正确的答案使程序完整。 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1Private Sub Command1_Click()Dim a(4, 4)For i = 1 To 4 For j = 1 To 4 If j=i or j=4i+1 Then a(i, j) = 1 Else a(i, j) = 0 End If Next jNext iFor i = 1 To 4 for j= 1 to 4 Print a(i, j) Next jNext iEnd Sub 15、在窗体上画一个命令按纽,然后编写如下的事件过程:Private Sub Command1_Click() Dim a(1 To 10) Dim p(1 To 3) k = 5 For i = 1 To 10 a(i) = i Next i For i = 1 To 3 p(i) = a(i * i) Next i For i = 1 To 3 k = k + p(i) * 2 Next i Print kEnd Sub程序运行后,单击命令按纽,输出结果是 33 。 16、下面程序运行后,输出的结果

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1