类、对象、属性、方法、事件和事件处理的概念及应用 知识点题库

编写VB程序,实现如下功能:在文本框Textl和Text2中分别输入一个整数,单击命令按钮Command1,在列表框List1中显示结果,运行效果如图1所示。结果包含两列数据,第1列为两数之间的摄氏温度值(间隔1度、升序),第2列为对应的华氏温度值。

  1. (1) 要使命令按钮Command1上显示的文本改为“转换”,可在其属性窗口(图2)中将属性的属性值修改为“转换”。
  2. (2) 为实现上述功能,请在划线处填入合适代码或选项。

    Private Sub Command1_Click()

    Dim t1 As Integer, t2 As Integer

    Dim i As Integer, t As Integer

    Dim f As Single

    List1.Clear

    t1 = Val(Text1.Text)

    t2 = Val(Text2.Text)

    If①Then  ' (选填字母,从下列ⅰ、Ⅱ、Ⅲ、Ⅳ中选取一项)

      t = t1: t1 = t2: t2 = t

    End If

    i = t1

    Do While②'(选填字母,从下列ⅰ、Ⅱ、Ⅲ、Ⅳ中选取一项)

    f = i * 9 / 5 + 32    '摄氏温度转换为华氏温度

    List1.AddItem Str(i) + "          " + Str(f)

     '(填程序代码)

    Loop

    End Sub

    划线①、②处的选项:   Ⅰ.i <= t2    Ⅱ.f <= t2     Ⅲ.t1 > t2     Ⅳ.i < f

下图是求圆面积的VB界面,语句Text2.text=str(3.14159*r*r)的功能最完善的表述是(   )

A . 在文本框Text2中显示字符串3.14159*r*r B . 在文本框Text2中显示字符串str(3.14159*r*r) C . 计算圆面积,并把结果送到实数型变量Text2.Text中 D . 计算圆面积,将结果转化成字符,送到Text2的属性Text中,同时在文本框Text2中显示出
统计“英文句子单词平均长度”的程序,其实现功能为在文本框Text1中输入要统计的英文句子,单击“统计”按钮Command1。进行统计,求出句子中共有几个单词、句子单词的平均长度,并显示在标签框Label1中。程序运行界面如图所示。

  1. (1) 代码“Private Sub Command1_Click()”中的Command1_Click是(单选,填字母:A,对象名/B,事件名/C,事件处理过程名)。
  2. (2) 实现上述功能的VB程序如下,请在画线处填入合适的代码。

      Private Sub Command1_Click()

        Dim S As String

        Dim n As Integer

    Dim cnt As Integer

    Dim i As Integer

    Dim num As Single

    Dim cd As Single

    Dim ave As Single

    s=Text1.Text

    n=Len(s)

    hum=0

    cd=0

    cnt=0

    For i=1 To n

           ①  

          If c>“a”And c<=“z” Or c>=“A”And c<=“Z”Then

            cnt=cnt+1

          Elself c>=”0”And c<=”9”Then

            cnt=cnt+1

          Else

           If cnt>0 Then

              num=num+1

              cd=cd+cnt

         ②  

           End If

         End If

        Next i

        If cnt>0 Then

           num=num+1

           cd=cd+cnt

        End If

        Ave=cd/num

        Label1.Caption=“总共有”+Str(num)+“个单词,平均长度为”+Str(ave)

      End Sub

     ② 

  3. (3) 若在文本框中输入“you are "No1".”,则经过上述程序统计共有单词数为个。
自然常数e,约为2.71828,其值可通过泰勒公式计算获得

小明编写了一个VB程序来计算e的近似值,功能为在文本框Text1中输入公式n值,单击“计算”命令按钮Commong1,在标签Label2中显示计算结果,程序运行界面如图所示。

  1. (1) 代码“Private sub commund1_Click是(单选,填字母:A,对象名/B,属性名/C,事件名)。
  2. (2) 为实现上述功能,请在画线处填入合适代码。

    Private Sub Command1_Click()

      Dim i As Double,p As Double

      Dim e As Double

      n=    ①   

      e=1

      i=1

      p=1

      Do While i<=n

        p=   ②   

        e=e+p

            ③  

      Loop

      Label2.Caption=”e的值是:”+Str(e)

    End Sub

     ② ③ 

在VB6中,要使程序启动时自动运行语句form1.caption=″hello″,该语句应被放在下列哪个事件处理过程中(  )
A . form1_load B . form_load C . form_click D . command1_click
编写VB程序,实现如下功能:在文本框Text1和Text2中分别输入一个整数,单击“转换”命令按钮,在列表框List1中显示结果,运行结果如图a所示。结果包含两列数据,第1列为两数之间的厘米值g(间隔1厘米、升序),第2列为对应的码值m。

鞋子尺码换算:常用的两种鞋码一种是欧制的码m,而我国采用的标准为厘米数g,鞋子尺码的换算公式:欧制m=中国制g*2-10。例如25是我国采用的厘米数,换算成欧制的码为25*2-10=40(码)。

  1. (1) 根据程序界面(图a)和其属性窗口(图b)所提供的信息,可以得知“转换”命令按钮的对象名称是
  2. (2) 为实现上述功能,请在划线处填入合适的代码或选项。

    Private Sub Command1_Click()

    Dim g1 As Integer, g2 As Integer

     Dim i As Integer, temp As Integer

     Dim m As Single

     List1.Clear

     g1 = Val(Text1.Text)

     g2 = Val(Text2.Text)

     IfThen

      temp = g1: g1 = g2: g2 = temp

     End If

     i = g1

     Do While i <= g2

     

      List1.AddItem Str(i) + “” + Str(m)

      i = i + 1

    Loop

    End Sub

  3. (3) 如果调试程序时在文本框中输入小数,例如第一个数输入24.5,第二个数输入29.5,则在列表框中(选填:能/不能)看到包含小数的厘米数。
自然常数e,约为2.71828,其值可通过泰勒公式计算获得

小明编写了一个VB程序来计算e的近似值,功能为在文本框Text1中输入公式n值,单击“计算”命令按钮Command1,在标签Labe2中显示计算结果,程序运行界面如图所示。

  1. (1) 代码“Private Sub Commandl_Click()”中的Click是(单选,填字母:A .对象名/B .属性名/C .事件名)。
  2. (2) 为实现上述功能,请在画线处填入合适代码。

    Private Sub Command1__Click()

      Dim I As Double,p As Double

      Dim e As Double

      n=    ①   

      e=1

      i=1

      p=1

      Do While i<=n

        p=    ②   

        e=e+p

            ③   

      Loop

      Label2. Caption=“e的值是:”+Str(e)

    End Sub

     ② ③ 

如果一个正整数从高位到低位上的数字依次递减,则称其为降序数(如92、4772是降序数,而7524不是降序数)。现编写VB程序实现如下功能:在文本框Text1中输入一个正整数,单击“判断”按钮 Command1,在标签Label2中显示出该数是不是降序数。程序运行界面如图所示。

  1. (1) 代码Private Sub Command1_Click( )中 Command1是。(单选,填字母:A .对象名/B .事件/C .事件处理过程/D .方法)。
  2. (2) 请完善下列程序代码:

    Private Sub Command1_Click( )

    Dim i As Integer, s As String, flag As Boolean

        ①   

    flag True: i=2

    Do While i <= Len (s) And flag

           ②  

            i=i+1

       ③  

    If flag Then

        Label2. Caption=s+ “是降序数!”

    Else

        Label2.Caption=s+ “不是降序数!”

    End If

    End Sub

     ② ③ 

删除字符串中的非字母字符,并查找出ASCII码值最大的字母。程序功能如下: 在文本框Text1中输入一个字符串,单击命令按钮Command1,在文本框Text2中显示删除非字母字符后的字符串,在文本框Text3中显示ASCII码值最大的字母,运行界面如图所示。

  1. (1) 程序中的Command1_Click()属于。(单选,填代码:A .对象名/B .事件名/C .属性名/D .事件处理过程名)
  2. (2) 实现上述功能的VB程序如下,请在划线处填入合适代码。

    Private Sub Command1_Click()

    Dim result As String, s As String, c As String, cmax as string

    Dim i As Integer, j As Integer

    s = Text1.Text

    Text2.Text = ""

    For i = 1 To Len(s)

    If c >= "A" And c <= "Z" Or c >= "a" And c <= "z" Then

    result =②

    End If

    Next i

    Text2.Text = result

    j = 2

    cmax = Mid(result, 1, 1)

    Do While j <= Len(result)

    If Mid(result, j, 1) > cmax Then cmax = Mid(result, j, 1)

    Loop

    Text3.Text = cmax

    End Sub

学生进行排队,要求分别对男女生按身高进行升序排序,排序后男生在前,女生在后。排序示例如下。

  1. (1) 实观上述功能的VB程序如下,在程序中出现的对象没有Caption属性的是。(选填,填字母:A . Label1 /B . Command1 /C . List1)
  2. (2) 实现上述功能的VB程序如下,请在划线处填入合适的代码。

    Const n = 10              ‘n 名学生

    Dim a(1 To n) As Integer           ‘存放身高

    Dim b(1 To n) As String            ‘存放性别

    Private Sub Form_Load()

    '读取身高和性别数据,分别存储在数组a和b中,代码略

    For i = 1 To n

        List1.AddItem b(i) + Str(a(i))

    Next i

    End Sub

    Private Sub Command1_Click()

    Dim i As Integer, j As Integer, k As Integer, t As Integer

    Dim s As String

    i = 1: 

    Do While i<j

        For k = i To j

            If  Then

                If b(i) = "女" Or a(i) > a(k) Then

                    s = b(k): b(k) = b(i): b(i) = s

                    t = a(k): a(k) = a(i): a(i) = t

                End If

            Else

                If  Then

                    s = b(k): b(k) = b(j): b(j) = s

                    t = a(k): a(k) = a(j): a(j) = t

                End If

            End If

        Next k

        If b(i) = "男" Then i = i + 1

        If b(j) = "女" Then

    Loop

    For i = 1 To n

        List2.AddItem b(i) + Str(a(i))

    Next i

    End Sub

  3. (3) 程序中加框处代码有错,请改正。
疫情发生后,小罗收集了某省南北两区共15个城市的累计病例人数和治愈人数,用以分析统计各区治愈率最高的n个城市。规则如下:每个城市包含区域名、城市名、累计病例人数和治愈人数,以“/”分隔,以“;”结尾。如“北区/A市/1467/530;”,表示北区的A市累计病例人数1467人,治愈人数有530人。

小罗编写VB程序实现上述功能:程序运行时,读取所有城市数据保存在变量shuju中并显示在列表框List1中。在文本框Text1中输入“南区”或“北区”,文本框Text2中输入n的值,单击“排名”按钮Command1,对数据进行统计分析,并在列表框List2中显示治愈率最高的n个城市,如有与第n个城市相同治愈率的城市,则同时输出。程序运行界面如图所示,请回答下列问题。

  1. (1) 代码“List2.AddItem”中的 AddItem是(单选,填字母:A . 事件名/ B . 属性名 / C . 方法名)
  2. (2) 实现上述功能的VB程序如下,请在划线处填入合适的代码。

    Dim shuju As String, a(1 To 100) As String

    Dim t As Integer, i As Integer, j As Integer, c As String, p As Integer, temp As String, q as String Dim f As Boolean, n As Integer, k As Integer

    '读取所有城市数据保存在变量shuju中,并显示在列表框List1中,代码略

    t = Len(shuju)

    i = 1: p = 0: j = 1

    Do While i <= t

      c = Mid(shuju, i, 1)

      If c = "/" Or c = ";" Then

        p = p + 1

        a(p) = j = i + 1

      End If

      i = i + 1

     Loop

    q = Text1.Text : n = Val(Text2.Text) : i = 1

    Do While i <= p \ 4 - 1

      k = i

      IfThen f = True Else f = False

      For j = i + 1 To p \ 4

        If a(4 * j - 3) = q Then

          If Val(a(4 * j)) / Val(a(4 * j - 1)) > Val(a(4 * k)) / Val(a(4 * k - 1)) Or Not f    Then k = j

           

          End If

        End If

      Next j

      If k <> i Then

        temp = a(4 * k - 3): a(4 * k - 3) = a(4 * i - 3): a(4 * i - 3) = temp

        temp = a(4 * k - 2): a(4 * k - 2) = a(4 * i - 2): a(4 * i - 2) = temp

        temp = a(4 * k - 1): a(4 * k - 1) = a(4 * i - 1): a(4 * i - 1) = temp temp = a(4 * k): a(4 * k) = a(4 * i): a(4 * i) = temp

      End If

      If  Then

        List2.AddItem a(4*i-3) & "/" & a(4*i-2) & "/" & Format(Val(a(4*i)) / Val(a(4*i-1)), "0.00%") & ";"

        i = i + 1

      Else

        Exit Do

      End If

    Loop

    End Sub

  3. (3) 程序中加框处代码有错,请改正。
在Visual Basic中,某对象的属性列表如图所示。

其中“BackColor”是(  )

A . 对象名 B . 属性名 C . 属性值 D . 事件名
奇偶校验是一种校验数据传输正确性的方法。其中奇校验方法:统计二进制数据的数位中“1”的个数,若个数为奇数,则校验位值为0,否则校验位值为1。小李编写了一个计算奇校验位值的VB程序,功能如下:在文本框Tex1中输入十进制下1~255间的待校验数,单击“计算”按钮Commana1 后,在文本框Text2中显示该数对应的二进制值,并在标签Label3中显示该数的校验位值。程序运行界面如图所示。

  1. (1) 在设计程序界面时,要清空文本框中的显示内容,应修改该文本框中的属性。
  2. (2) 实现上述功能的VB程序如下,请在画线处填入合适的代码。

    Private Sub Command1_Click( )

      Dim a As Integer,s As String

      Dim n As Integer,t As Integer,v As Integer

      n=Val(Text1.Text)

      t=0

      s=""

      Do While n>0

        a=n Mod 2

        n=n\2

        t=   ①  

        s=Str(a)+s

      Loop

      v=t Mod 2

      Text2.Text=s

      Label3.Caption="校验位值:"+   ②  

    End Sub

    以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②

  3. (3) 运行该程序,在文本框Text1中输入2,单击“计算”按钮,则显示的校验位值是
卡普利加数又称雷劈数,是指将该数的平方数拆分成两部分,若这两部分的和与该数相等,则该数为卡普利加数。小陈编写VB程序,实现功能:文本框Text1输入一个正整数,单击“判断”按钮,在标签Label2中显示该数的平方,如果该数是卡普利加数,在标签Label3中显示两数和相加的等式,否则显示“该数不是卡普利加数”。运行界面如下图所示:

  1. (1) “判断”按钮的对象名为
  2. (2) 请在划线处填入合适的代码。

    Private Sub Judge_Click( )

        Dim x As Integer, i As Integer

        Dim y As Long, flag As Boolean

        flag = False

        x = Val(Text1.Text)

        i = 10

       

        Label2.Caption = "该数的平方是:" + Str(y)

        Do While y \ i > 0 And flag = False

            t1 = y \ i

            t2 = y Mod i

            If  Then

                flag = True

                Label3.Caption = Str(t1) + "+" + Str(t2) + " = " + Str(x)"

            End If

            i =

        Loop

        If Not flag Then Label3.Caption = "该数不是卡普利加数"

    End Sub

  3. (3) 已知55是卡普利加数,根据以上程序,在文本框Text1中输入55,则标签Label3中显示的表达式是:
小赵编写了一个VB程序,实现从某一字符串删除指定的连续字符串,并将处理后的字符串重新输出,程序界面如图所示,在文本框Text1中输入原始字符串,在文本框Text2中输入需要删除的连续字符串,单击Command1后,在文本框Text3中输出处理后的结果。实现上述功能的VB程序如下,请对其中的代码进行完善。

Private Sub Command1_Click()

    Dim s1, s2, d As String

    Dim i As Integer

    s1 = Text1.Text

        ①   

    i = 1 

    Do While i<= Len(s1)

        s = Mid(s1, i, Len(d))

        If s = d Then

               ②  

        Else

            s2 = s2 +    ③  

            i = i + 1

        End If

    Loop

    Text3.Text = s2

End Sub

  1. (1) 若要在窗Form1的左上角显示如图所示的“删除字符串”字样,则应对Form1对象的属性值进行修改。

  2. (2) 为了实现上述的功能,请在划线处填上合适的代码。

     ② ③ 

趣味填空题: 给出用等号连接的两个整数,如“222=24”,让你在左边的整数中间某个位置插入一个加号,看有没有可能让等式成立。以上面的式子为例,可以写成2+22=24和22+2=24。现设计一个程序,实现该算法,程序运行界面如图所示。

  1. (1) 标题要显示“趣味数学”,需修改窗体的属性。
  2. (2) 实现上述功能的VB程序如下,请在程序划线处填入合适代码。

    Private Sub Command1_Click()

        Dim s As String, s1 As String, s2 As String

        Dim c As Integer, k As Integer, i As Integer, flag As Boolean

        flag = False

        s = Text1.Text

        For c = 1 To Len(s)

            If    Then Exit For   'Exit for退出循环

        Next c

        s1 = Mid(s, 1, c - 1)

        s2 = Mid(s, c + 1,len(s)-c)

        k =

        For i = 1 To k - 1

            If Val(Mid(s1, 1, i)) + Val(Mid(s1, i + 1,c-i-1)) = Val(s2) Then

                List1.AddItem Mid(s, 1, i) + "+" + Mid(s, i + 1,len(s)-i)

                

            End If

        Next i

        If Not flag Then List1.AddItem "等式始终无法成立!"

    End Sub

小王设计“表达式计算"的程序,通过程序实现加法和乘法结合的表达式计算。程序工作原理为:对输入的表达式从前往后以相邻两个运算符和三个数字为一组,根据先乘后加的优先级进行运算,得到一个运算符和两个数字,再将其与之后的运算符和数字组成一组继续运算,直到全部数据运算完毕。现编写VB程序如下:在文本框Text1中输入一个由加法和乘法组成的表达式,以“="结尾。点击“计算”按钮后,在文本框Text2中输出表达式计算的结果。实现该功能的VB程序及界面如下。

Private Sub Command1_Click()

    Dim i As Integer, j As Integer, n As Integer, ¥ As Integer

    Dim s As String, ch As String, c1 As String, c2 As String

    s=Text1.Text:k=1:j=1

    For i=1 To Len(s)

        ch=Mid(s,i,1)

        If ch< "0" Or ch>"g" Then

            v=     '变量v截取s中的每段数字

            j=i+1

            If k =1 Then

                n1=v:c1=ch

            ElseIf k = 2 Then

                n2=v:c2=ch

            Else

                    ①   

                If c1 ="*" And c2 = "*" Then

                    n1=n1*n2:n2=n3

                    c2=ch

                ElseIf c1 = "*" And c2 =" +" Then

                    n1=n1*n2:n2=n3

                    c1 ="+": c2= ch

                ElseIf c1= "+"And c2 =' "*" Then

                        ②   

                    c2=ch

                Else

                    n1=n1+n2:n2=n3

                    c2=ch

                End If

            End If

            K=k+1

        End If

    Next i

    If c1="*"Then n1=n1*n2 Else n1=n1+n2

    Text2.Text = Str (n1)

End Sub

请回答以下问题。

  1. (1) 在最后的输出语句“Text2.Text = Str(n1)”中,Text属于Text2的( 单选,填字母:A .方法名/ B .对象名/C .属性名/ D .属性值)。
  2. (2) 加框处的代码有误,请改正
  3. (3) 补充横线处代码

     ② 

  4. (4) 若将表达式结尾的“=”改为“+”,对程序运行的结果(选填:是/否)会有影响。
确定一个控件在窗体上的位置的属性是(    )
A . Width和Height B . Width 或Height C . Top和Left D . Top或Left
有一个报数游戏,n个人排成一圈,游戏开始时规定个报数号m,然后从其中一个人开始按顺时针报数1,2,3,…,n,当某人报到的数为m的倍数时,即被淘汰,其他人继续游戏,直到最后。现用VB设计了一个程序,程序界面如下图所示。在文本框Text1中输入参加游戏的人数n,在文本框Text2中输入报数号m,单击“报数”按钮,即在列表框List1中显示每次被淘汰的人的顺序号。

实现上述功能的VB代码如下,但加框处有错,请改正。

Private Sub Command1_Click()

    Dim n As Integer,m As Integer

    Dim a(1 To 50)As Integer

    n= Val(Text1. Text)

    m= Val(Text2. Text)

    For i= 1 To n

       

    Next i

    s=0;j=0

    Do While s <n

        t=0

        Do While t <m

                     

            t=t+ a(j)

        Loop

        a(j)=0

        s=s+1

        List1. Additem"第"+Str(s)+"次:"+Str(j)

    Loop

End sub

  1. (1) “报数”按钮的对象名称是
  2. (2) 程序代码中,加框处有错,请改正。

    应改为

  3. (3) 程序代码中,将横线处语句补充完整。
  4. (4) 程序运行结束后,变量t的值是
窗体的hide属性的含义是(      )。 
A . 隐藏 B . 展现 C . 装入 D . 卸载
最近更新