鸭子tv国产极品在线观看_成人69视频在线播放_91精品免费在线观看_亚洲AT永久偷窥无码精品_国产精品自产拍在线观看涩浪潮久

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2011春江蘇省二級VB上機1真題

    江蘇省二級Visual Basic上機試卷1

    (本試卷完成時間為70分鐘)

    考試說明:

    1.改錯題的界面不作要求,主要用來調(diào)試程序,若題目中有參考界面,則僅作參考。

    2.考試結(jié)束后,文件必須存放在指定位置,否則適當扣分;考試盤中若無指定文件,則不予評分。

    3.程序代碼書寫應呈鋸齒形。

  一、改錯題(14)

  【題目】

  本程序的功能是:找出100999之間的十進制數(shù)為升序數(shù),且其對應的八進制數(shù)也是升序數(shù)的整數(shù)。所謂升序數(shù),是指該數(shù)的十位數(shù)字值大于個位數(shù)字值,百位數(shù)字值大于十位數(shù)字值。

 

 

  Option Explicit

  Private Sub CmdFind_Click()

    Dim n As Integer,s8 As String

    For n=100 To 999   

       s8=d2Q(n)

       If sx(n) And sx(Val(s8))  Then

          List1.AddItem n & "D==>" & s8 & "Q"

       End If

    Next n

  End Sub

  Private Function d2Q(n As Integer) As String

    Dim p As Integer

    Do

       p=n Mod 8

       d2Q=d2Q & CStr(P)

       n=n\8

    Loop Until n=0

  End Function

  Private Function sx(ByVal n As Integer)As Boolean

    Dim num() As Integer,k As Integer,t As Integer

    Dim i As Integer

    t=Len(CStr(n))

    ReDim num(t)

    For k=1 To t

      num(k)=Val(Mid(CStr(n),k,1))

    next k

    For i=1 To UBound(num)-1

      If num(i)>=num(i+1) Then Exit For

    Next i

    sx=True

  End Function

    【要求】

    1.新建工程,輸入上述代碼,改正程序中的錯誤。

    2.改錯時,不得增加或刪除語句,但可適當調(diào)整語句的位置。

    3.將窗體文件和工程文件分別命名為F1P1,并保存到T盤根目錄下。

二、編程題(26)

    【題目】

    編寫程序,對實驗數(shù)據(jù)進行分組均化處理。處理的方法是:先將實驗數(shù)據(jù)從小到大排序,然后按排序后的順序每3個數(shù)作為一組,再用每組3個數(shù)的平均值作為這3個數(shù)的表現(xiàn)值。

  【編程要求】

  1.程序參考界面如圖所示,編程時不得增加或減少界面對象或改變對象的種類,窗體及

界面元素大小適中,且均可見。

  2.運行程序,單擊"處理"按鈕,出現(xiàn)如圖所示的InputBox函數(shù)窗口,輸入數(shù)據(jù)個數(shù)(或使用缺省值)后單擊"確定"按鈕,則生成10-40之間的隨機整數(shù)數(shù)組并顯示在實驗數(shù)據(jù)文本框中,然后對實驗數(shù)據(jù)進行排序并顯示在排序結(jié)果文本框中,再進行分組均化并在文本框中輸出數(shù)據(jù)均化結(jié)果;單擊“清除"按鈕,3個文本框清空,焦點置于"處理"按鈕上;單擊"結(jié)束"按鈕,結(jié)束程序運行。

  3.程序中應定義一個名為sort的通用過程,用于對一維數(shù)組按從小到大排序。

 

 

  【要求】

  將窗體文件和工程文件分別命名為F2P2,并保存到T盤根目錄下。

 

    參考答案

一、改錯題

    Private Function d2Q(n As Integer) As String    改為ByVal n As Integer

    d2Q=a2Q & cstr(p)          改為cstr(p) & d2Q

    If num(i)>=num(i+1) Then Exit For    改為Exit Function

二、編程題

  Option Explicit

  Option Base 1

  Private Sub CmdRun_Click()

    Dim a() As Integer,n As Integer,i As Integer

    Dim sum As Integer,av As Integer,k As Integer

    n=InputBox("輸入數(shù)據(jù)個數(shù):", ,12)

    ReDim a(n)

    For i=1 To n

      a(i)=Int(Rnd*41)+10

      Text1=Text1 & Str(a(i))

    Next i

    Call sort(a)

    For i=1 To UBound(a) Step 3

      sum=0

      For k=i To i+2

         sum=sum+a(k)

      Next k

      av=sum/3

      For k=1 To 3

       Text3=Text3 & Str(av)

      Next k

    Next i

    End Sub

    Private Sub sort(a()As Integer)

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

      For i=1 To UBound(a)-1

        Forj=1 To UBound(a)-i

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

            t=a(j)

            a(j)=a(j+1)

            a(j+1)=t

          End If

        Next j

      Next i

     For i=1 To UBound(a)

       Text2=Text2 & Str(a(i))

     Next i

 End SUb

 Private Sub CmdClear_click()

    Text1=""

    Text2=""

    Text3=""

    CmdRun.SetFocus

 End Sub

 Private Sub CmdExit_click()

   End

 End Sub