VB对口升学数组测试.doc_第1页
VB对口升学数组测试.doc_第2页
VB对口升学数组测试.doc_第3页
VB对口升学数组测试.doc_第4页
VB对口升学数组测试.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

循环数组测试题1、 在Visual Basic中,组合框是文本框和( )特性的组合。A)复选框B)标签C)列表框D)目录列表框2、 以下程序段的运行结果是_。 APrivate Sub Form_Click() Dim s As Long, f As Long Dim n As Integer, i As Integer f = 1 n = 4 For i = 1 To n f = f * i s = s + f Next i Print s=; sEnd Sub A. 33 B. 34 C. 35 D. 36 3、 以下程序段的运行结果是_。 APrivate Sub Form_Click() a = 1 b = a Do Until a = 5 X = a * b Print Str(a) * Str(b) =; Str(X); a = a + b b = b + a Loop End Sub A. 1*1=1 2*3=6 B. 1*1=2 2*2=4 C. 1*1=1 3*3=9 D. 1*1=2 3*2=6 4、 下列语句声明的数组a包含的元素个数有_。 ADim a(3 ,-2 to 2,5) A. 120 B. 75 C. 60 D. 13 5、 定义数组Array(1 to 5,5)后,下列哪一个数组元素不存在_。 C A. Array(1,1) B. Array(1,0) C. Array(0,1) D. Array(5,5) 6、在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:Private Sub Command1_Click()Dim a1(4, 4), a2(4, 4)For i = 1 To 4For j = 1 To 4a1(i, j) = i + ja2(i, j) = a1(i, j) + i + jNext jNext iPrint a1(3, 3); a2(3, 3)End Sub程序运行后,单击命令按钮,在窗体上输出的是A)6 6 B)10 5 C)7 21 D)6 127、在窗体上面画一个命令按钮和一个标签,其名称分别为 Commandl 和 Labell ,然后编写如下事件过程: Private Sub Commandl_Click() Counter=0 For i=1 To 4 For j=6 To 1 Step -2 Counter=Counter+1 Nextj Nexti Labell.Caption=Str(Counter) End Sub 程序运行后,单击命令按钮,标签中显示的内容是 A11 B12 C16 D20 8、在窗体上画一个名称为 Text1 的文本框和一个名称为 Commandl 的命令按钮,然后编写如下事件过程: Private Commandl_Click() Dim i As Integer, n As Integer For i=0 To 50 i = i+3 n = n+1 If i10Then Exit For Next Textl.Text=Str(n) End Sub 程序运行后,单击命命令按钮,在文本框中显示的值是 () 。 A5 B4 C3 D2 9、1 个二维数组可以存放 1 个矩阵。在程序开始有语句 Option Base 0,则下面定义的数组中正好可以存放 1 个43 矩阵(即只有 12 个元素)的是( )。 A)Dim a(-2 To 0,2)As Integer B)Dim a(3,2)As Integer C)Dim a(4,3)As Integer D)Dim a(-1 To -4,-1 To -3)As Integer 10、设在窗体上有 1个名称为 Combol 的组合框,含有 5个项目,要删除最后一项,正确的语句是( )。 A)Combo1.RemoveItem Combo1.Text B)Combo1.RemoveItem 4 C)Combo1.RemoveItem Combo1.ListCount D)Combo1.RemoveItem 5二、填空题1、执行下面的程序段后,s的值为( ) s=5 for i=2.6 to 4.9 setp 0.6 s=s+1 next i2、以下程序段的输出结果是( ) num=0 while num=2 num=num+1 print num wend3、设有以下循环: x=1 Do x=x+2 print x loop until ( )程序运行后,要求执行3次循环,请填空。4、 在窗体上画一个名称为Label1的标签,然后编写如下事件过程:Private Sub Form_Click() Dim arr(10,10) As Integer Dim i As Integer , j As Integer For i=2 To 4 For j=2 To 4 arr(i,j)=i*j Next j Next i Label1.Caption=Str(arr(1,2)+arr(3,3)End Sub程序运行后,单击窗体,在标签中显示的内容是_。5、用Dim(3 to 7,10)数组共有 _个元素。 三、程序填空题1、 本程序的功能是利用随机数函数模拟投币,方法是:每次随机产生一个0或1的整数,相当于一次投币,1代表正面,0代表反面。在窗体上有三个文本框,名称分别是Text1、Text2、Text3,分别用于显示用户输入投币总次数、出现正面的次数和出现反面的次数,如图所示。程序运行后,在文本框Text1中输入总次数,然后单击“开始”按钮,按照输入的次数模拟投币,分别统计出现正面、反面的次数,并显示结果。以下是实现上述功能的程序,请填空。Private Sub Command1_Click() Radomize n=CInt(Text1.Text) n1=0 n2=0 For i=1 To r=Int(Rnd* ) If r= Then n1=n1+1 Else n2=n2+1 Next i Text2.Text=n1 Text3.Text=n2End Sub2、 输入一串字符,统计各字母出现的次数,不区分大小写。Private Sub Command1_Click( ) Dim a(1 To 26) As Integer Dim i As Integer, j As Integer, c As String * 1 tot = (Text1) 求字符串的长度 For i = 1 To tot c = 取一个字符,将其转换成相应的大写字母 If c = A And c = Z Then j = Asc(c) 65 + 1 将AZ大写字母转换成126的下标 End If Next i For j = 1 To 26 输出字母及其出现的次数 If a(j) 0 Then Label2.Caption = Label2.Caption Chr$(j + 64) = a(j) End If Next jEnd Sub3、 随机产生10个两位整数,找出其中的最大值、最小值和平均值。考虑到要在不同的过程中使用数组,所以首先在模块的通用段中声明数组: 随机整数的生成由窗体的Load事件代码完成:Private Sub Form_Load( ) Dim p As String Randomize p = For i = 1 To 10 a(i) = p = p Str(a(i) , Next Label1.Caption = LTrim(Left(p, Len(p) 1)End Sub求最大、最小以及平均值由“确定”按钮Command2的Click事件代码完成:Private Sub Command2_Click( ) Dim n As Integer, m As Integer, s As Single min = 100: max = 10: s = 0 For i = 1 To 10 If a(i) n Then If a(i) m Then s = Next Text1.Text = max Text2.Text = min Text3.Text = End Sub最后是“关闭”按钮Command3的Click事件代码:Private Sub Command3_Click( ) End Sub4、利用随机函数模拟投币结果。设共投币100次,求“两个正面”、“两个反面”、“一正一反”三种情况各出现多少次。Private Sub Command1_Click( ) Dim a(1, 1) Dim n As Integer n = Val(InputBox(n=, 请输入投币次数) Label1.Caption = 投币次数: n Randomize Timer For i = 1 To n n1 = n2 = Next i Print Tab(14); 投币结果如下: Print Tab(10); 两个正面的次数为:; a(0, 0) Print Tab(10); 两个反面的次数为:; a(1, 1) Print Tab(10); 一正一反的次数为:; End Sub5、利用一维数组统计一个班学生09、1019、2029、9099及100各分数段的人数。首先在“通用”段声明动态数组:Dim a(10) As Integer命令按钮Command1的Click事件代码为:Private Sub Command1_Click() Dim i As Integer, p As Integer, n As Integer Dim x As Single n = 利用输入框输入学生数 Label1.Caption = 共有人数: n For i = 1 To n x = Val(InputBox(请输入第 Str(i) 名学生的成绩, ) If x = 0 And x = 100 Then 限制数据范围 p = Int(x / 10) Else MsgBox 请输入正确分数! 消息框 i = i 1 End If Next i For p = 0 To 9 p * 10 (p * 10 + 9) 分的人数为: a(p) Next p List1.AddItem 100分的人数为: a(10)End Sub6、 输入初始值,输出100个不能被3整除的数。图6-1 输出100个不能被3整除的数Private Sub Command1_Click( ) Dim x As Integer, n As Integer x = Val(Text2.Text): n = Do Until If x Mod 3 0 Then Text1.Text = Text1.Text Str(x) Chr(13) Chr(10) n = n + 1 End If LoopEnd Sub7、 设计程序,求s = 1 + (1 + 2) + (1 + 2 + 3) + + (1 + 2 + 3 + + n)的值。Private Sub Command1_Click( ) Dim n As Integer, i As Integer, j As Long, s As Long n = Val(Text1.Text) j = 0: For i = j = s = s + Next i Label2.Caption = 和数 s = Str(s) Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text)End Sub8、 所谓“水仙花数”,是指一个三位数,其各位数的立方和等于该数,如153 = 13 + 53 + 33,编写程序输出所有的“水仙花数”。Private Sub Command1_Click( ) Dim p As Integer List1. 清空列表框 For n = a = b = Int(n - a * 100) / 10) c = n - (a * 100 + b * 10) p = If p = n Then List1.AddItem NextEnd Sub9、 马克思曾经做过这样一道趣味数学题:有30个人在一家小饭馆里用餐,其中有男人、女人和小孩。每个男人花了3先令,每个女人花了2先令,每个小孩花了1先令,一共花去50先令。问男人、女人和小孩各有几人?Private Sub Command1_Click( ) List1.Clear For x = 1 To 16 For y = 1 To 24 z = 30 - x - y If Then p = Format(x, ) Format(y, ) Format(z, ) List1. End If

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论