1. <small id="kntrr"><delect id="kntrr"></delect></small>
    2. <sub id="kntrr"></sub>
        1. <form id="kntrr"><listing id="kntrr"></listing></form>
            江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
            2011春江蘇省二級VB上機1真題

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

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

                考試說明:

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

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

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

              一、改錯題(14)

              【題目】

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

             

             

              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.改錯時,不得增加或刪除語句,但可適當調整語句的位置。

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

            二、編程題(26)

                【題目】

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

              【編程要求】

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

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

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

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

             

             

              【要求】

              將窗體文件和工程文件分別命名為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("輸入數據個數:", ,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

             

            国产在线精品一区二区三区不卡_亚洲第一极品精品无码_永久免费无码网站在线观看_亚洲av综合日韩