<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            試題

            計算機二級VB上機重難點題型及答案

            時間:2025-04-27 06:24:25 試題 我要投稿
            • 相關推薦

            2016年計算機二級VB上機重難點題型及答案

              一、二維數組(矩陣)操作

              1、求矩陣元素的最大值

              Dim a(5, 5) As Integer

              '省略給數組a賦值代碼

              '求數組a的最大值

              Max = a(1, 1) '假設第一個數為最大值初值

              For i = 1 To 5

              For j = 1 To 5

              If a(i, j) > Max Then

              Max = a(i, j)

              End If

              Next j

              Next i

              '循環結束后,max獲得最大值

              '注意for i循環必須從1開始,不能從2開始

              '若for i循環從2開始,那a(1,2),a(1,3),a(1,4),a(1,5)都無法參加比較

              2、求方陣對角線元素之和、兩個對角線元素之和

              假定有如下定義:

              Const N% = 6

              Dim a(1 to N,1 to N) as Integer

              則a數組的主、副對角線元素分別為:

              1.主對角線元素:a(1,1)、a(2,2)、…a(i,i)…a(N,N),“左上-右下”元素,即元素行、列下標相同;

              2.副對角線元素:a(1,N)、a(2,N - 1)、…a(i,N – i + 1)…a(N,1),“右上-左下”元素,即第1行最后一個、第2行倒數第2個……第i行倒數第i個元素。

              黑色線條表示的是主對角線,紅色線條表示的副對角線

              Sum1 = 0 '獲得主對角線之和

              Sum2 = 0 '獲得副對角線之和

              For i = 1 To N

              For j = 1 To N

              If i = j Then '求主對角線元素之和

              Sum1 = Sum1 + a(i, j)

              End If

              If i + j = N + 1 Then '求副對角線元素之和

              Sum2 = Sum2 + a(i, j)

              End If

              Next j

              Next i

              3、列與列互換,如第2列和第4列互換

              For i = 1 To N

              t = a(i, 2)

              a(i, 2) = a(i, 4)

              a(i, 2) = t

              Next i

              注意:a(i, 2)表示第2列的數組元素,a(i,4)表示第4列的數組元素,如果是第2行與第4行互換,則可用a(2, i)表示第2行的數組元素,a(4,i)表示第4行的數組元素。

              4、二維數組每行最大值及其在該行中的位置

              Dim a(20, 5) As Integer '定義20行5列的矩陣

              For i = 1 To 20

              Max = a(i, 1) '假設該行第一個數是最大值初值

              maxi = 1 '獲得假設初值的列下標

              For j = 1 To 5

              If a(i, j) > Max Then Max = a(i, j): maxi = j

              Next j

              Print "第"; i; "行最大值"; Max, "在該行的"; maxi; "位置"

              Next i

              注意:該題還可以擴展為求所有行最大值平均值、各行平均數的最大值、各行最小數的平均值;每行在某個范圍內(如小于100)元素值之和、平均值;每行的偶數最大值、奇數最小值等。

              5、矩陣四周圍元素之和,能被某數整除的個數

              Dim a(7, 7) As Integer

              如上聲明的數組a,對數組a而言其四周圍的元素即為第一行、第七行、第一列和第七列的數組元素。

              第一行數組元素滿足a(1,j),j從1到7

              第七行數組元素滿足a(7,j),j從1到7

              第一列數組元素滿足a(i,1),i從1到7

              第七列數組元素滿足a(i,7),i從1到7

              Sum=0

              For i = 1 To 7

              For j = 1 To 7

              If i = 1 Or i = 7 Or j = 1 Or j = 7 Then

              Sum = Sum + a(i, j)

              End If

              Next j

              Next i

              二、字符(單詞)操作

              1、統計文本框中數字、大寫字母、小寫字母個數

              每次取出一個字符,利用ASCII碼值進行判斷,

              數值0~9的ASCII值范圍是:48~57 或 Asc("0")~Asc("9")

              大寫字母A~Z的ASCII值范圍是:65~90 或 Asc("A")~Asc("Z")

              小寫字母a~z的ASCII值范圍是:97~122 或 Asc("a")~Asc("z")

              For i = 1 To Len(Text1)

              s = Mid(Text1, i, 1)

              If Asc(s) >= 48 And Asc(s) <= 57 Then

              ’是數值

              ElseIf Asc(s) >= 65 And Asc(s) <= 90 Then

              ’是大寫字母

              ElseIf Asc(s) >= 97 And Asc(s) <= 122 Then

              ’是小寫字母

              End If

              Next i

              注意:與該題類似的還有,統計給定字母的出現次數,此時循環中的if判斷條件改成s與該字母的比較即可;判斷文本框中輸入的是數字信息還是非數字信息等。

              2、統計文本中某單詞出現的次數、平均長度、最長單詞見上機教程第十三講考點2單詞操作

              ’統計文本s中單詞this出現的次數

              For i = 1 To Len(s) ’對字符串內所有字符處理

              c = Mid(s, i, 1) ’取字符

              If c <> " " Then ’不為空格字符

              word = word + c ’將該字符連接在單詞中

              Else ’若為空格字符

              If word= "this" then ’如果是this單詞,對該單詞個數計數

              n = n + 1 ’單詞個數計數

              End if

              word = "" ’存下一個單詞前,將變量word清空

              End If

              Next i

              ’循環退出后,還有最后出現一個單詞未處理

              If word= "this" then ’如果是this單詞,對該單詞個數計數

              n = n + 1 ’單詞個數計數

              End if

              3、統計文本中同時含有某幾個字母的單詞個數(instr函數)

              要求統計包含了字母“m”,“n”和“p”的單詞個數

              For i = 1 To Len(s) ’對字符串內所有字符處理

              c = Mid(s, i, 1) ’取字符

              If c <> " " Then ’不為空格字符

              word = word + c ’將該字符連接在單詞中

              Else ’若為空格字符

              ’利用instr函數判斷單詞word中有沒有包含m、n和p字母

              If instr(word, "m")>0 and instr(word, "n")>0 and instr(word, "p")>0 then

              n = n + 1 ’單詞個數計數

              End if

              word = "" ’存下一個單詞前,將變量word清空

              End If

              Next i

              ’循環退出后,還有最后出現一個單詞未處理

              If instr(word, "m")>0 and instr(word, "n")>0 and instr(word, "p")>0 then

              n = n + 1 ’單詞個數計數

              End if

              4、編寫函數判斷回文

              思路:將第一個字符和最后一個字符進行比較,如果相同,繼續判斷第二個字符和倒數第二個字符是否相同,若不相同比較結束,該字符串不滿足回文。

              Function foundhuiwen(p As String) ’判斷p是否滿足回文條件

              foundhuiwen = True

              For i = 1 To Len(p) / 2

              If Mid(p, i, 1) <> Mid(p, Len(p) - i + 1, 1) Then

              foundhuiwen = False

              Exit For

              End If

              Next i

              End Function

              三、算法

              1、排序算法

              (1)對讀入的數據進行從小到大排序

              Dim a(10) As Integer

              Private Sub Command1_Click()

              Open App.Path & "\Data5.txt" For Input As #1

              Do While Not LOF(1)

              For i = 1 To 10

              Input #1, a(i)

              Next i

              Loop

              Close #1

              End Sub

              Private Sub Command2_Click()

              ’============以下考生編寫程序開始=================

              ’============考生編寫程序結束=====================

              End Sub

              (2)將奇偶數分開,將奇數移動到前面,偶數移動到后面。(文本框為控件數組,名稱屬性分別為Text1(0)~Text1(9))

              單擊“重排數據”按鈕,執行如下代碼

              ’================================================

              ’算法:

              ’1)令i指向第1個數,j指向最后1個數,并先暫存最后一個數;

              ’2)檢查第i個數是否為偶數,若不是,再檢查下一個,直到第i個是

              ’ 偶數,則把此偶數放到第j個位置,j向前移1個位置;

              ’3)檢查第j個數是否為奇數,若不是,再檢查前一個,直到第j個是

              ’ 奇數,則把此奇數放到第i個位置,i向后移1個位置;

              ’4)重復2)、3),直到i=j

              ’5)把開始暫存的數放到i的位置

              ’=================================================

              Dim i%, j%, temp%, flag As Boolean

              i = 0

              ’ j = ?1

              ’ ?2 = Text1(j)

              flag = True

              ’ While (i < ?3)

              If flag Then

              If Text1(i) Mod 2 = 0 Then

              Text1(j) = Text1(i)

              j = j - 1

              flag = Not flag

              Else

              i = i + 1

              End If

              Else

              ’ If Text1(j) Mod 2 = ?4 Then

              Text1(i) = Text1(j)

              i = i + 1

              flag = Not flag

              Else

              j = j - 1

              End If

              End If

              Wend

              Text1(i) = temp

              End Sub

              參考答案:

              1、9

              2、temp

              3、j

              4、1

              2、查找算法:在隨機產生(數值互不相同)的數組中輸入一個數進行查找

              Option Base 1

              Dim a(10)

              ’產生數組

              Private Sub Command1_Click()

              For i = 1 To 10

              a(i) = Fix(Rnd * 99 + 1)

              ’ For j = 1 To ?1

              If a(i) = a(j) Then

              ’ i = ?2

              Exit For

              End If

              Next j

              Next i

              End Sub

              ’輸入一個數進行查找

              Private Sub Command2_Click()

              Dim num As Integer, i As Integer

              num = InputBox("請輸入待查找的數")

              For i = 1 To 10

              ’ If a(i) = ?3 Then

              Text2.Text = Str(num) + "是數組中的第" + Str(i) + "個值"

              Exit For

              End If

              Next i

              ’ If ?4 > 10 Then

              Text2.Text = Str(num) + "不存在于數組中"

              End If

              End Sub

              參考答案:

              1、i-1

              2、i-1

              3、num

              4、i

              3、插入和刪除算法

              (1)有序數組中插入一個數,讓該數組仍然有序

              思路:通過比較查找到該數要插入的位置i,將該位置以及后續數逐一向后移動(注意移動時應先移最后一個數)。注意插入后數組的個數要增加1。

              Dim a(100) As Integer, num As Integer

              ’讀入升序的數組元素

              Private Sub Command1_Click()

              Dim k As Integer

              Open App.Path & "\in4.dat" For Input As #1

              For k = 1 To 60

              Input #1, a(k)

              Next k

              Close #1

              End Sub

              ’輸入一個要插入的數

              Private Sub Command2_Click()

              num = InputBox("請輸入一個數")

              End Sub

              ’插入后數組仍然為升序

              Private Sub Command3_Click()

              For i = 1 To 60

              ’If num < a(i) Then ?1

              Next i

              ’For j = 60 To i ?2

              ’a(j + 1) =?3

              Next j

              ’?= num

              End Sub

              參考答案

              1、Exit For

              2、Step -1

              3、a(j)

              4、a(i)

              (2)有序數組中刪除一個數

              思路:通過比較查找到要刪除數的位置i,將該位置以及后續數逐一向前移動(注意移動時應先移第i+1個數)。注意刪除后數組的個數要減少1。

              ’數組a獲得有序數

              Private Sub Command3_Click()

              num = InputBox("請輸入一個數")

              For i = 1 To n ’n為數組元素個數

              If num = a(i) Then Exit For

              Next i

              ’ If ?1 Then

              MsgBox "該數不存在于數組中,不能執行刪除操作!"

              Else

              n = n - 1

              ’ For j = i To ?2

              ’ a(j) = ?3

              Next

              End If

              End Sub

              參考答案

              1、i>n

              2、n

              3、a(j+1)

              四、其它

              1、求一范圍內的完全平方數(平均值、最大值、個數等)

              注意:36=62,完全平方數是36,而不是6

              求100以內所有完全平方數的個數

              For i=1 to 100

              If sqr(i)=int(sqr(i)) then ‘完全平方數開平方后為整數

              n=n+1

              End If

              Next i

              2、有序數組A和B,合并成數組C,要求仍然有序

              思路:假設數組A和B各有20個數組元素,先將A的數組元素值賦值給C的前20個數組元素,再將B的數組元素值賦值給C作為后20個數組元素,再對C進行排序操作。

              3、圖形控件Shape的橢圓、圓形設置、填充線設置、邊框設置等

              橢圓和圓形設置:Shape屬性

              填充線設置:FillStyle屬性

              填充線顏色設置:FillColor屬性

              邊框設置:BorderStyle屬性

              邊框顏色設置:BorderColor屬性

              4、統計隨機產生數中出現頻率最高的數以及出現的次數

              數組a獲得100個隨機數,判斷出現頻率最高的數及其次數,b(i)獲得對應a(i)出現的次數。

              max = 0

              For i = 1 To 20

              For j = 1 To i-1 ‘不能讓a(1)和其本身進行比較

              If a(i) = a(j) Then

              b(i) = b(i) + 1

              End If

              Next j

              If b(i) > max Then max = b(i)

              Next i

            【計算機二級VB上機重難點題型及答案】相關文章:

            計算機二級VB上機試題及答案09-09

            計算機二級VB考試上機題型與解題技巧07-14

            計算機二級VB上機模擬題及答案10-17

            計算機二級《VB》上機題題庫(含答案)10-22

            計算機二級vb上機試題07-06

            計算機二級考試VB上機模擬題及答案06-18

            2016年計算機VB二級考試上機題及答案08-25

            計算機二級VB上機操作練習題及答案10-02

            計算機二級考試VB上機模擬題以及答案10-05

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院