试题

试题 试卷

logo

题型:填空题 题类:模拟题 难易度:普通

浙江省杭州市2015年高考信息技术模拟卷5

[根据2011年9月高考题改编]下列VB程序运行时,单击命令按钮Command1后,文本框Text1中显示的内容是,文本框Text2中显示的内容是

Private Sub Command1 click( )

  Dim a(1 to 3) as integer,k as integer,t as integer,s as integer

  a(1)=15: a(2)=36: a(3)=7

  s=0

  For k=2 to 3

if a(k)>a(1) then

  t=a(1):a(1)=a(k):a(k)=t

  s=s+1

End if

  Next k

  text1.text=str(a(1))

  text2.text=str(s)

End sub

举一反三
【加试题】筛选法求素数的核心思想是先找最小素数,然后剔除其所有的倍数,在留下的数中再剔除最小素数的倍数,重复执行,直到剔除所有的非素数。

小张编写了一个2查找孪生素数对(差值为 2)的 VB 程序,功能如下:在文本框Text1中输入一个整数n(n≤1000000),单击“求素数对”按钮Command1,在列表框List1中显示2到n范围内的素数,在标签Label2中显示素数个数,在标签Label3中显示孪生素数对个数。程序运行界面如图所示。

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

Private Sub Command1_Click()

Dim n As Long, i As Long, j As Long

Dim tAs Long '存储素数个数

Dim countAs Integer '存储素数对个数

Dim p As Long

Dim a(2 To 10000000)As Integer

n = Val(Text1.Text)

For i = 2 To n

    a(i) = 1

Next i

p = 2

Do While p <= Int(Sqr(n))

    If a(p) = 1 Then

        j = 2

        Do While j <= n \ p

                       '(1)

            j = j + 1

        Loop

    End If

    p = p + 1

Loop

t = 0

For i = 2 To n

    If a(i) = 1 Then t = t + 1

Next i

count = 0

For i = 2 To n - 2

    If  Then      '(2)

        count = count + 1

        List1.AddItem ads(i, 1) & ads(i + 2, 5)

    End If

Next i

Label2.Caption = "总共有" + Str(t) + "个素数"

Label3.Caption = "其中有" + Str(count) + "个孪生素数对"

End Sub

Function ads(xAs Integer, n As Integer) As String

'整数转换成长度固定的字符串,代码略

End Function

编写VB程序,功能为:单击“发牌”按钮“Command1”后,从一副扑克牌(不包括大王、小王、J、Q、K、A)中随机抽取5张牌,牌的花色(♠♥♣♦)忽略,显示在列表框“List1”中。如果这5张牌由一个对子和一个顺子(3张牌连续)组成,则在标签“Label1”中显示“运气不错:)”,否则显示“运气一般:|”。程序运行界面如图所示。

实现上述功能的VB程序如下:

Private Sub Command1_Click()

  List1.Clear

  Dim five(1 To 5) As Integer

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

  Dim p As Integer, find_pair As Boolean

  '随机抽取5张牌,将牌的点数存储在数组five中,并在List1中显示。代码略

  i = 5: p = 1: find_pair = False

  Do While i>= 2

    j=p

    Do While j <= i - 1

      If five(j) > five(j + 1) Then

        t = five(j): five(j) = five(j + 1): five(j + 1) = t

      ElseIf five(j) = five(j + 1) And Not find_pair Then

        t = five(1): five(1) = five(j): five(j) = t

        t = five(2): five(2) = five(j + 1): five(j + 1) = t

        find_pair = True

        i = i + 1

        p = _____________

        Exit Do

      End If

      j = j + 1

    Loop 

    i = i - 1

  Loop

  k = 0

  For i = 3 To 4

    If  Then k = k + 1

  Next i

  If five(1) = five(2) And k = 2 Then

    Label1.Caption = "运气不错:)"

  Else

    Label1.Caption = "运气一般:|"

  End If

End Sub

请回答下列问题:

返回首页

试题篮