![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2015年9月全國計算機(jī)二級VB操作題真題1 |
102 一、基本操作題 (1)在名稱為Form1、標(biāo)題為“球類項目”、且沒有最大化和最小化按鈕的窗體上畫1個名 稱為Combo1的組臺框。組合框中的文本內(nèi)容為空,表項內(nèi)容有”乒乓球“、”羽毛球”和“網(wǎng)球”三項。運(yùn)行后的窗體如圖所示。 注意:存盤時必須存放在考生文件夾下,工程文件名為sjt1.vbp,窗體文件名為sjt1.frm (2)在名稱為Form1、標(biāo)題為”轉(zhuǎn)換”的窗體上,畫1個名稱為Shape1、邊框?qū)挾葹?/SPAN>3的形狀。再畫2個標(biāo)題分別為“橢圓”和”圓“的命令按鈕。如下圖所示。 要求:編寫適當(dāng)?shù)氖录^程,使得單擊“橢圓”按鈕時, Shape1的形狀變換為橢圓;單擊“圓“按鈕時,shape1的形狀變換為圓。程序中不得使用變量,每個事件過程中只能寫一條語句 注意:存盤時必須存放在考生文件夾下,工程文件名為sjt2.vbp,窗體文件名為sjt2.frm. 二、簡單應(yīng)用題 (1)在考生文件夾下有一個工程文件sjt3.vbp。窗體Form1上有2個標(biāo)題分別是”讀數(shù) 據(jù)“和“查找“的命令按鈕。請畫1個名稱為Text1、初始值為空的文本框,該文本框允許顯示多行內(nèi)容,且有垂直滾動條,如圖所示。程序功能如下: ①在考生文件夾下的in3.dat文件中存有100個正整數(shù)。單擊”讀數(shù)據(jù)”按鈕,則將文件in3.dat中的數(shù)據(jù)讀入數(shù)組a中。 ②單擊“查找”按鈕,則查找數(shù)組a中所有為7的倍數(shù)的數(shù)據(jù),并將這些數(shù)據(jù)順次顯示在Text1文本框內(nèi)(數(shù)據(jù)之間用空格隔開)!弊x數(shù)據(jù)“按鈕的click事件過程已經(jīng)結(jié)出,請編寫程序完成”查找”按鈕的click事件過程,實現(xiàn)上述功能。 注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,在結(jié)束程序運(yùn)行之前,必須使 用”查找“接鈕完成查找過程,且必須用窗體右上角的關(guān)閉按扭結(jié)束程序,否則無成績。最后將程序接原文件名存盤。 Option Base 1 Dim a(100) As Integer Private Sub Command1_Click() Dim k As Integer Open App.Path & "\in3.dat" For Input As #1 For k = 1 To 100 Input #1, a(k) Next k Close #1 End Sub Private Sub Command2_Click() '考生編寫 End Sub Private Sub Form_Unload(Cancel As Integer) Open App.Path & "\out3.dat" For Output As #1 Print #1, Text1.Text Close #1 End Sub (2)考生文件夾下有一個工程文件sjt4.vbp。在窗體Form1上有2個名稱為Command1和Command2、標(biāo)題分別為“重輸“和”查找”的命令按鈕。程序功能為:單擊“重輸”按鈕,則清空Text1中的內(nèi)容,等待用戶輸入由空格隔開的若干個英文單詞;單擊“查找“按鈕,則找出Text1中最長的單詞,并將其顯示在Text2中。某一次的運(yùn)行效果如圖所示。請將”查找“按鈕的Click事件過程中的注釋符去掉,把?改為正確內(nèi)容,以實現(xiàn)上述程序功能。 注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,最后將程序按原文件名存盤。 Private Sub Command1_Click() Text1.Text = "" Text2.Text = "" Text1.SetFocus End Sub Private Sub Command2_Click() Dim x As String, word As String, word_max As String Dim num As Integer, xmax As Integer x = Trim(Text1.Text) xmax = 0 Do While Len(x) > 0 num = InStr(x, Space(1)) If num = 0 Then ' word = ? x = "" Else ' word = Left(x, ? ) x = Mid(x, num + 1) End If If Len(word) >= xmax Then xmax = Len(word) ' word_max = ? End If ' ? 'Text2.Text = ? End Sub 三、綜合應(yīng)用題 考生文件夾下有一個工程文件sjt5.vbp。在窗體Form1上有2個標(biāo)題分別是“產(chǎn)生數(shù) 據(jù)“和”重新排列”的命令按鈕,有2個標(biāo)題為“原始數(shù)據(jù)“和“排列數(shù)據(jù)“的標(biāo)簽。程序功能如下: ①單擊“產(chǎn)生數(shù)據(jù)”按鈕,則隨機(jī)產(chǎn)生20個一位整數(shù),存入數(shù)組a中,并同時顯示在Text1中。 ②單擊“重新排列“按鈕,則重新排列數(shù)組a中的元素使等值的元素相鄰存放,并且保持它們在數(shù)組a中首次出現(xiàn)的相對次序;最后將排列結(jié)果顯示在Text2中。某一次運(yùn)行結(jié)果如圖所示。 請將“重新排列”按鈕的click事件過程中的注釋符去掉,把?改為正確內(nèi)容,以實現(xiàn)上述程序功能。 注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,最后程序按原文件名存盤。 Option Base 1 Dim a(20) As Integer Private Sub Command1_Click() Randomize (1) Text1.Text = "" For i = 1 To 20 a(i) = Int(Rnd * 10) Text1.Text = Text1.Text + Str(a(i)) Next End Sub Private Sub Command2_Click() ' i = ? Do While i < 20 For j = i + 1 To 20 If a(i) = a(j) Then x = a(j) i = i + 1 For k = j To i + 1 Step -1 '本循環(huán)把下標(biāo)為i到j-1的元素向后移一個位置 ' a(k) = ? Next k ' a(i) = ? End If Next j i = i + 1 Loop Text2.Text = "" ' For i = 1 To ? Text2.Text = Text2.Text + Str(a(i)) Next i End Sub
|