欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

試題

計(jì)算機(jī)二級(jí)VB上機(jī)重難點(diǎn)題型及答案

時(shí)間:2025-04-27 06:24:25 試題 我要投稿
  • 相關(guān)推薦

2016年計(jì)算機(jī)二級(jí)VB上機(jī)重難點(diǎn)題型及答案

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

  1、求矩陣元素的最大值

  Dim a(5, 5) As Integer

  '省略給數(shù)組a賦值代碼

  '求數(shù)組a的最大值

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

  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

  '循環(huán)結(jié)束后,max獲得最大值

  '注意for i循環(huán)必須從1開始,不能從2開始

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

  2、求方陣對(duì)角線元素之和、兩個(gè)對(duì)角線元素之和

  假定有如下定義:

  Const N% = 6

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

  則a數(shù)組的主、副對(duì)角線元素分別為:

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

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

  黑色線條表示的是主對(duì)角線,紅色線條表示的副對(duì)角線

  Sum1 = 0 '獲得主對(duì)角線之和

  Sum2 = 0 '獲得副對(duì)角線之和

  For i = 1 To N

  For j = 1 To N

  If i = j Then '求主對(duì)角線元素之和

  Sum1 = Sum1 + a(i, j)

  End If

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

  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列的數(shù)組元素,a(i,4)表示第4列的數(shù)組元素,如果是第2行與第4行互換,則可用a(2, i)表示第2行的數(shù)組元素,a(4,i)表示第4行的數(shù)組元素。

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

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

  For i = 1 To 20

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

  maxi = 1 '獲得假設(shè)初值的列下標(biāo)

  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

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

  5、矩陣四周圍元素之和,能被某數(shù)整除的個(gè)數(shù)

  Dim a(7, 7) As Integer

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

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

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

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

  第七列數(shù)組元素滿足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、統(tǒng)計(jì)文本框中數(shù)字、大寫字母、小寫字母?jìng)(gè)數(shù)

  每次取出一個(gè)字符,利用ASCII碼值進(jìn)行判斷,

  數(shù)值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

  ’是數(shù)值

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

  ’是大寫字母

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

  ’是小寫字母

  End If

  Next i

  注意:與該題類似的還有,統(tǒng)計(jì)給定字母的出現(xiàn)次數(shù),此時(shí)循環(huán)中的if判斷條件改成s與該字母的比較即可;判斷文本框中輸入的是數(shù)字信息還是非數(shù)字信息等。

  2、統(tǒng)計(jì)文本中某單詞出現(xiàn)的次數(shù)、平均長(zhǎng)度、最長(zhǎng)單詞見上機(jī)教程第十三講考點(diǎn)2單詞操作

  ’統(tǒng)計(jì)文本s中單詞this出現(xiàn)的次數(shù)

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

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

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

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

  Else ’若為空格字符

  If word= "this" then ’如果是this單詞,對(duì)該單詞個(gè)數(shù)計(jì)數(shù)

  n = n + 1 ’單詞個(gè)數(shù)計(jì)數(shù)

  End if

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

  End If

  Next i

  ’循環(huán)退出后,還有最后出現(xiàn)一個(gè)單詞未處理

  If word= "this" then ’如果是this單詞,對(duì)該單詞個(gè)數(shù)計(jì)數(shù)

  n = n + 1 ’單詞個(gè)數(shù)計(jì)數(shù)

  End if

  3、統(tǒng)計(jì)文本中同時(shí)含有某幾個(gè)字母的單詞個(gè)數(shù)(instr函數(shù))

  要求統(tǒng)計(jì)包含了字母“m”,“n”和“p”的單詞個(gè)數(shù)

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

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

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

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

  Else ’若為空格字符

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

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

  n = n + 1 ’單詞個(gè)數(shù)計(jì)數(shù)

  End if

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

  End If

  Next i

  ’循環(huán)退出后,還有最后出現(xiàn)一個(gè)單詞未處理

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

  n = n + 1 ’單詞個(gè)數(shù)計(jì)數(shù)

  End if

  4、編寫函數(shù)判斷回文

  思路:將第一個(gè)字符和最后一個(gè)字符進(jìn)行比較,如果相同,繼續(xù)判斷第二個(gè)字符和倒數(shù)第二個(gè)字符是否相同,若不相同比較結(jié)束,該字符串不滿足回文。

  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)對(duì)讀入的數(shù)據(jù)進(jìn)行從小到大排序

  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()

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

  ’============考生編寫程序結(jié)束=====================

  End Sub

  (2)將奇偶數(shù)分開,將奇數(shù)移動(dòng)到前面,偶數(shù)移動(dòng)到后面。(文本框?yàn)榭丶䲠?shù)組,名稱屬性分別為Text1(0)~Text1(9))

  單擊“重排數(shù)據(jù)”按鈕,執(zhí)行如下代碼

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

  ’算法:

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

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

  ’ 偶數(shù),則把此偶數(shù)放到第j個(gè)位置,j向前移1個(gè)位置;

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

  ’ 奇數(shù),則把此奇數(shù)放到第i個(gè)位置,i向后移1個(gè)位置;

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

  ’5)把開始暫存的數(shù)放到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、查找算法:在隨機(jī)產(chǎn)生(數(shù)值互不相同)的數(shù)組中輸入一個(gè)數(shù)進(jìn)行查找

  Option Base 1

  Dim a(10)

  ’產(chǎn)生數(shù)組

  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

  ’輸入一個(gè)數(shù)進(jìn)行查找

  Private Sub Command2_Click()

  Dim num As Integer, i As Integer

  num = InputBox("請(qǐng)輸入待查找的數(shù)")

  For i = 1 To 10

  ’ If a(i) = ?3 Then

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

  Exit For

  End If

  Next i

  ’ If ?4 > 10 Then

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

  End If

  End Sub

  參考答案:

  1、i-1

  2、i-1

  3、num

  4、i

  3、插入和刪除算法

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

  思路:通過(guò)比較查找到該數(shù)要插入的位置i,將該位置以及后續(xù)數(shù)逐一向后移動(dòng)(注意移動(dòng)時(shí)應(yīng)先移最后一個(gè)數(shù))。注意插入后數(shù)組的個(gè)數(shù)要增加1。

  Dim a(100) As Integer, num As Integer

  ’讀入升序的數(shù)組元素

  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

  ’輸入一個(gè)要插入的數(shù)

  Private Sub Command2_Click()

  num = InputBox("請(qǐng)輸入一個(gè)數(shù)")

  End Sub

  ’插入后數(shù)組仍然為升序

  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)有序數(shù)組中刪除一個(gè)數(shù)

  思路:通過(guò)比較查找到要?jiǎng)h除數(shù)的位置i,將該位置以及后續(xù)數(shù)逐一向前移動(dòng)(注意移動(dòng)時(shí)應(yīng)先移第i+1個(gè)數(shù))。注意刪除后數(shù)組的個(gè)數(shù)要減少1。

  ’數(shù)組a獲得有序數(shù)

  Private Sub Command3_Click()

  num = InputBox("請(qǐng)輸入一個(gè)數(shù)")

  For i = 1 To n ’n為數(shù)組元素個(gè)數(shù)

  If num = a(i) Then Exit For

  Next i

  ’ If ?1 Then

  MsgBox "該數(shù)不存在于數(shù)組中,不能執(zhí)行刪除操作!"

  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、求一范圍內(nèi)的完全平方數(shù)(平均值、最大值、個(gè)數(shù)等)

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

  求100以內(nèi)所有完全平方數(shù)的個(gè)數(shù)

  For i=1 to 100

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

  n=n+1

  End If

  Next i

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

  思路:假設(shè)數(shù)組A和B各有20個(gè)數(shù)組元素,先將A的數(shù)組元素值賦值給C的前20個(gè)數(shù)組元素,再將B的數(shù)組元素值賦值給C作為后20個(gè)數(shù)組元素,再對(duì)C進(jìn)行排序操作。

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

  橢圓和圓形設(shè)置:Shape屬性

  填充線設(shè)置:FillStyle屬性

  填充線顏色設(shè)置:FillColor屬性

  邊框設(shè)置:BorderStyle屬性

  邊框顏色設(shè)置:BorderColor屬性

  4、統(tǒng)計(jì)隨機(jī)產(chǎn)生數(shù)中出現(xiàn)頻率最高的數(shù)以及出現(xiàn)的次數(shù)

  數(shù)組a獲得100個(gè)隨機(jī)數(shù),判斷出現(xiàn)頻率最高的數(shù)及其次數(shù),b(i)獲得對(duì)應(yīng)a(i)出現(xiàn)的次數(shù)。

  max = 0

  For i = 1 To 20

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

  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

【計(jì)算機(jī)二級(jí)VB上機(jī)重難點(diǎn)題型及答案】相關(guān)文章:

計(jì)算機(jī)二級(jí)VB上機(jī)試題及答案09-09

計(jì)算機(jī)二級(jí)VB考試上機(jī)題型與解題技巧07-14

計(jì)算機(jī)二級(jí)VB上機(jī)模擬題及答案10-17

計(jì)算機(jī)二級(jí)《VB》上機(jī)題題庫(kù)(含答案)10-22

計(jì)算機(jī)二級(jí)vb上機(jī)試題07-06

計(jì)算機(jī)二級(jí)考試VB上機(jī)模擬題及答案06-18

2016年計(jì)算機(jī)VB二級(jí)考試上機(jī)題及答案08-25

計(jì)算機(jī)二級(jí)VB上機(jī)操作練習(xí)題及答案10-02

計(jì)算機(jī)二級(jí)考試VB上機(jī)模擬題以及答案10-05