亚洲国产福利在线一二三观看_精品国产伦一区二区三区欲臀_国产a∨视频精品视频护士_精品八戒人妻少妇av

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導(dǎo)
2011秋江蘇省計算機二級VB上機真題1

2011秋二級Visual Basic上機試卷

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

  考試須知:

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

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

  3.程序代碼書寫應(yīng)呈鋸齒形。

一、改錯題(14)

  【題目】

  本程序的功能是:找出100999之間的回文數(shù),且其對應(yīng)的8進(jìn)制數(shù)也是回文數(shù)的整數(shù)。所謂回文數(shù),是指正讀與倒讀都相同的數(shù)。

1    Option Explicit

2    Private Sub Command1_Click()

3      Dim i As Integer,m As Integer

4      For i=100 To 999

5        m=d2Q(i)

6        If m And Reverse(i)Then

7          List1.AddItem CStr(i)

8          List2.AddItem CStr(m)

9        End If

10     Next i

11   End Sub

12   Private Function d2Q(n As Integer)As String

13     Dim P As Integer

14     Do

15       P=n Mod 8

16       d2Q=CStr(p) & d2Q

17       n=n\8

18     Loop Until n=0

19   End Function

20   Private Function Reverse(n As Integer)As Boolean

21     Dim i As Integer,s As String

22     s=CStr(n)

23     For i=1 To Len(s)/2

24       If Mid(S,i,1)<>Mid(S,Len(s)-i+1,1) Then Exit For

25     Next i

26     Reverse=True

27   End Function

  【要求】

  1.新建工程,按參考界面形式創(chuàng)建窗體,再從T盤根目錄下的errtxt文件中將有錯誤的程序代碼復(fù)制到代碼編輯器窗口中或自行輸入上述代碼,改正程序中的錯誤。

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

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

二、編程題(26)

  【題目】

  編寫程序,求出巴都萬數(shù)列(Padovan Sequence)的第n1項到第n2項中的素數(shù)數(shù)據(jù)項。巴都萬數(shù)列的計算公式如下:

P =       

【編程要求】

  1.程序參考界面如圖所示,編程時不得增加或減少界面對象或改變對象的種類,窗體及界面元素大小適中,且均可見。

  2.運行程序,在兩個文本框中分別輸入起始項與終止項的序號后按"查找"按鈕,則在多行文本框中,按每

10個元素輸出數(shù)列項數(shù)據(jù),并在列表框中輸出其中的素數(shù)數(shù)據(jù)項及其序號;"清除"按鈕,將三個文本框

與列表框清空,焦點置于第一個文本框上;"結(jié)束"按扭,結(jié)束程序運行。

  3.程序中應(yīng)定義一個判斷素數(shù)的通用過程。

 

【要求】

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

 

參考答案  

一、改錯題

    6  If m And Reverse(i) Then    改為Reverse(m)

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

    24  Exit For    改為Function

二、編程題

Option Explicit

Private Sub CmdFind_Click()

  Dim n1 As Integer, n2 As Integer, i As Integer

  Dim k As Integer, js As Integer, st As String

  n1 = Text1: n2 = Text2

  For i = n1 To n2

    k = Padovan(i)

    st = st & Str(k)

    js = js + 1

    If js Mod 10 = 0 Then

      st = st & vbCrLf

    End If

    If prime(k) Then

      List1.AddItem k & "--(" & i & ")"

    End If

  Next i

  Text3 = st

End Sub

Private Function Padovan(n As Integer) As Integer

  If n = 0 Or n = 1 Or n = 2 Then

    Padovan = 1

  Else

    Padovan = Padovan(n - 2) + Padovan(n - 3)

  End If

End Function

Private Function prime(n As Integer) As Boolean

  Dim i As Integer

  If n = 1 Then Exit Function

  For i = 2 To Sqr(n)

    If n Mod i = 0 Then Exit Function

  Next i

  prime = True

End Function

Private Sub CmdClear_click()

  Text1 = "": Text2 = "": Text3 = ""

  List1.Clear

  Text1.SetFocus

End Sub

Private Sub CmdExit_click()

  End

End Sub