试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:普通

浙江省高中信息技术 查找算法及程序实现同步练习

查找并删除重复数据的算法是对数组a中每个元素逐个作为关键字进行从后往前查找,如果有重复,删除该数据后继续查找。例如,第一次将a(1)作为关键字,从a(10)到a(1)进行逐个查找,如果和a(1)相等,则删除该数据,然后继续查找;如果是a(1)本身和它相等,则代表无重复数据。编写VB程序,程序功能如下:运行程序时,在列表框List1中显示数组a中的原始数据;单击“去除重复”按钮(Command1),在列表框List2中输出去除重复后的数组a中的数据,同时在标签Label1中显示删除的数据总个数,运行效果如图所示。

请回答下列问题:

(1)、当数组a中的值依次为1,2,3,7,8,1,6,6,8,7时,共删除数据(填写数值)个。
(2)、实现上述功能的VB程序如下,请在划线处填入合适的代码。

Const maxn=10

Dim a(1 To maxn) As Integer

Private Sub Form_Load()

‘maxn个数据存储在数组a中,并在列表框List1中显示

‘代码略

End Sub

Private Sub Command1_Click()

Dim i As Integer, n As Integer     ‘n用于存储当前査找的数组长度

Dim j As Integer, key As Integer     ‘key用于存储本次查找关键字的数据位置

key=1: n=maxn

Do While key <=n

  i=n

  Do While a(i) <> a(key)

   

  Loop

  If i=key Then     ‘未找到,重新下一査找关键字

   key=key+1

  Else    ‘找到重复数据,删除

   For j=i To n-1

   

   Next j

   n=n-1

  End If

Loop

For i=1 To n

  List2.AddItem Str(a(i))

Next i

Label1.Caption=“共删除数据”++“个”

End Sub

举一反三
【加试题】编写VB程序,实现如下功能:单击“生成密文”按钮Command2,在文本框Text3中产生与每个小写字母对应的密文(每个明文字母对应1个不重复的密文字母)。在文本框Text1中输入单词字符串,单击“加密”按钮Command1后,进行逐个字符加密,加密方法:在“明文”中找到相应字符,再得到明文对应位置的密文,并在文本框Text2中显示对应密文(运行效果如图17所示)。实现上述功能的VB代码如下:

 

Dim m2 As String

Private Sub Command1Click()

Dim flag(1 To 26) As Boolean

Dim num As Integer,t As Integer

Randomize

num = 1

Text3.Text = " "

For i = 1 To 26

    flag(i) = False

Next i

Do While num <= 26

    x = Int(Rnd * 26) + 97

          ①      

    If  flag(t) = False Then

    m2 = m2 + Chr(x)

    num = num + 1

      ②       

    End If

Loop

Text3.Text = m2

End Sub

Private Sub Command2Click()

Dim s As String, m As String, result As String

Dim k As String, c As Integer

s = Text1.Text

m = "abcdefghijklmnopqrstuvwxyz"

For i = 1 To Len(s)

    k = Mid(s, i, 1)

    If  k >= "A" And k <= "Z"  Then

    k = Chr(Asc(k) + 32)

    End If

    c = 1: continue = True

    Do While       ③       

    If k = Mid(m, c, 1) Then

    continue = False

    End If

    c = c + 1

    Loop

   ④     

Next i

Text2.Text = result

End Sub

程序①处的代码是{#blank#}1{#/blank#}

程序②处的代码是{#blank#}2{#/blank#}

程序③处的代码是{#blank#}3{#/blank#}

程序④处的代码是{#blank#}4{#/blank#}

返回首页

试题篮