内蒙古自治区巴彦淖尔市临河区第三高级中学2022届高三上学期信息技术期中考试(计算机班)VB试卷

试卷更新日期:2021-11-30 类型:期中考试

一、单项选择题(每小题2分,共40分)

  • 1. 以下能在窗体Form1的标题栏中显示“VisualBasic窗体"的语句是(    )。
    A、Form1.Name ="VisualBasic窗体" B、Form1.Title="VisualBasic窗体" C、Form1.Caption="VisualBasic窗体" D、Form1.Text="VisualBasic窗体”
  • 2. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:

    Private Sub Command1_Click(  )

    Move 500,500

    End Sub

    程序运行后,单击命令按钮,执行的操作为(    )。

    A、命令按钮移动到距窗体左边界、上边界各500的位置 B、窗体移动到距屏幕左边界、上边界各 500的位置 C、命令按钮向左、上方向各移动500 D、窗体向左、上方向各移动500
  • 3. 在窗体上有若干控件,其中有一个名称为Text1的文本框。影响Text1的Tab顺序的属性是(    )。
    A、TabStop B、Enabled C、Visible D、Tabindex
  • 4. 在窗体上画一个名称为List1的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为(    )。
    A、For  i=0 To List1.ListCount-1

    .....

    Next B、For i=0 To ListCount-1

    .....

    Next C、For i=1 To List1.listCount

    .....

    Next D、For i=1 To ListCount

    .....

    Next

  • 5. 以下Case语句中错误的是(    )
    A、Case 0 To10 B、Case   is>10 C、Case  is>10  And  is<50 D、Case 3,5, is>10
  • 6. 以下关于图片框控件的说法中,错误的是(    )
    A、可以通过Print方法在图片框中输出文本 B、清空图片框控件中图形的方法之一是加载一个空图形 C、图片框控件可以作为容器使用 D、用Stretch属性可以自动调整图片框中图形的大小
  • 7. 执行语句s=Len(Mid("VisualBasic",1,6,)后,s的值是(    )。
    A、Visual B、Basic C、6 D、11
  • 8. 当一个复选框被选中时,它的Value属性的值是(    )
    A、3 B、2 C、1 D、0
  • 9. 以下关于函数过程的叙述中,正确的是(    )
    A、函数过程形参的类型与函数返回值的类型没有关系 B、在函数过程中,过程的返回值可以有多个 C、当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递 D、如果不指明函数过程参数的类型,则该参数没有数据类型
  • 10. 确定一个控件在窗体上的位置的属性是(    )
    A、Width和Height B、Width 或Height C、Top和Left D、Top或Left
  • 11. 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程

    Private Sub Command1 _Click()

    Text1.Text = "Visual"

    Me.Text1= "Basic"

    Text1 = "Program"

    End Sub

    程序运行后,如果单击命令按钮,则在文本框中显示的是(    )

    A、Visual B、Basic C、Program D、出错
  • 12. 以下关系表达式中,其值为False 的是(    )
    A、"ABC">"AbC" B、"the"<>"they" C、"VISUAL"=UCase("Visual") D、"Integer">"Int"
  • 13. 语句Print 5/4*6\5 Mod 2的输出结果是(    )
    A、0 B、1 C、2 D、3
  • 14. 在窗体上画一个文本框、一个标签和一个命令按钮,其名称分别为Text1、Label1和Command1,然后编写如下两个事件过程:

    Private Sub Command1_Click( )

        strText = InputBox("请输入")

        Text1.Text = strText

    End Sub

    Private Sub Text1_Change()

        Label1.Caption = Right(Trim(Text1.Text), 3)

    End Sub

    程序运行后,单击命令按钮,如果在输入对话框中输入abcdef,则在标签中显示的内容是(    )

    A、 B、abedef C、abc D、def
  • 15. 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:

    Private Sub Command1_ Click()

        x=-5

        If Sgn(x) Then

            y= Sgn(x^2)

        Else

            y= Sgn(x)

        End If

    Print y

    End Sub

    程序运行后,单击命令按钮,窗体上显示的是(    )

    A、-5 B、25 C、  1 D、-1
  • 16. 在窗体上画一个命令按钮(其NAME属性为Command1),然后编写如下代码

    Option Base 1

    Private Sub Command1_Click()

        Dim a

        s= 0

        a= Array(1,2,3,4)

        j=1

        For i= 4 To 1 Step -1

            s=s+a(i)*j

            j=j* 10

        Next i

    Print s

    End Sub

    运行上面的程序,单击命令按钮,其输出结果是(    )

    A、4321 B、1234 C、34 D、12
  • 17. 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程:

    Private Sub Command1_Click()

        n = Val(Text1.Text)

        For i=2 To n

            For j= 2 To sqr(i)

                If i Mod j=0 Then Exit For

            Next j

            If j>Sqr(i) Then Print i

        Next i

    End Sub

    该事件过程的功能是(    )

    A、输出n以内的奇数 B、输出n以内的偶数 C、输出n以内的素数 D、输出n以内能被j整除的数
  • 18. 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编如事件过程:

    Private Sub Command1_Click()

        Dim array1(10, 10) As integer

        Dim i As integer, j As integer

        For i= 1 To 4

            For j= 2 To 5

                Array1(i, j)=i+j

            Next j

        Next i

        Text1.Text = array1(2, 5) + array1(3, 4)

    End Sub

    程序运行后,单击命令按钮,在文本框中显示的值是(    )

    A、15 B、14 C、13 D、12
  • 19. 以下程序的运行结果是(    )

    Private Sub Form_Click( )

        a= 1: b= 1

        Print"A="; a; "B="; b

        Call mult(a, b)

        Print"A=";a; "B=";b

    End Sub

    Sub mult(x, y)

        x=2* x

        y=3*y

    End Sub

    A、A=1 B=1

    A=1 B=1

    B、A=1 B=1

    A=1 B=3

    C、A=1 B=1

    A=2 B=3

    D、A=1 B=1

    A=2 B=1

  • 20. 在VB中设计程序时,能自动被检查出来的错误是(     )
    A、语法错误 B、语法错误和逻辑错误 C、运行错误 D、逻辑错误

二、填空题(每空1分,共10分)

  • 21. 产生一个[20,50]范围内的随机数的表达式是
  • 22. VB中的变量如果没有显示声明其数据类型,则默认为
  • 23. Visual Basic提供了结构化程序设计的三种基本结构,三种基本结构是
  • 24. 根据数组中元素的个数是否可以变化,数组分为数组和数组。
  • 25. 如果列表框的ListCount属性为20,则列表框的最后一项的Listindex值为
  • 26. 在过程调用中,参数的传递可分为传递和传递两种方式。

三、程序填空题(每空2分,共50分)

  • 27. 下面过程max()用于求3个数中的最大值,利用这个过程求5个数中的最大值,请填空。

    Private Sub Command1_Click( )

        Print “5个数34、124、68、73、352的最大值是:”

        Max1 = max(34,124,68)

        Max1 =

        Print Max1

    End Sub

    Public Function max(ByVal a%,ByVal b%,ByVal c%)

        If   Then

            M = a

        Else

            M = b

        End If

        If  Then

            Max = m

        Else

           

        End If

    End Function

  • 28. 窗体上有一个图片框Picture1,两个命令按钮Command1和Command2,如图所示。当单击命令按钮Command1时,在图片框中画出正弦函数,当单击命令按钮Command2时,清空图片框中的图像,请填空。

    Private Sub Command1_Click()

        Picture1.Scale (-6, 6)-(6, -6)

        Picture1.DrawWidth = 5

        For i = -6 To 6 Step 0.0001

            Picture1.  (i,)

           

    End Sub

    Private Sub Command2_Click()

        Picture1.

    End Sub

  • 29. 编写事件过程并满足以下要求:单击命令按钮1,产生50个[50, 300]随机整数并显示在列表框1中,单击命令按钮2,在列表框2中显示上述随机整数中的所有大于100的数,并在列表框1中删除该数。如图所示。

    Private Sub Command1_ Click( )

        Randomize

        For i= 1 To 50

            x =

            List1.

        Next i

    End Sub

    Private Sub Command2 _Click( )

        For i=  To 0 step -1

            If   Then

                List2.AddItem

                List1.

           

        Next i

    End Sub

  • 30. 以下程序suixian可以判断某个数字是否为水仙花数,所谓“水仙花数”是指一个3位数,其各个数字立方和等于该数本身。

    Private Sub Command1_Click( )

        Dim i As Integer

        For i = 100 to 999

           

        Next i

    End Sub

    Public Sub suixian(x As Integer)

        Dim i%,j%,k%

        i =

        j = (x -i * 100)\10

        k =

        If   Then Print x

    End Sub

  • 31. 用随机数产生50个[10,100]不重复的正整数放入数组,从小到大排序,每行输出10个数。

    Private Sub Command1Click()

        Dim a(1 To 50) As Integer, i%, j%, t%, p%, n%, x%

        n=0

        Randomize

        Do While n<50

            x=

            For i= 1 To n

                If Then  Exit For

            Next i

            If i> n Then

               

                a(n)=x

            End If

        Loop

        For i= 1 To 49

           

            For j=i+ 1 To 50

                If a(p)> a(j) Then

            Next j

            t= a(p): a(p) = a(i): a(i)=t

        Next i

        For i= I To 50

            Print a(i);

            if Then Print

        Next i

    End Sub