一、 單選題
1.關(guān)于順序文件的描述,下面正確的是 ________。
A) 每條記錄的長度必須相同
B) 可通過編程對文件中的某條記錄方便地修改
C) 數(shù)據(jù)只能以ASCII碼形式存放在文件中,所以可通過文本編輯軟件顯示
D) 文件的組織結(jié)構(gòu)復(fù)雜
2.關(guān)于隨機文件的描述,下面不正確的是 ________。
A) 每條記錄的長度必須相同
B) 一個文件的記錄號不必
C) 可通過編程對文件中的記錄方便地修改
D) 文件的組織結(jié)構(gòu)比順序文件復(fù)雜
3.按文件的組織方式,文件分為 ________。
A) 順序文件和隨機文件
B) ASCII文件和二進制文件
C) 程序文件和數(shù)據(jù)文件
D) 磁盤文件和打印文件
4.順序文件是因為 ________。
A) 文件中按每條記錄的記錄號從小到大排序好的
B) 文件中按每條記錄的長度從小到大排序好的
C) 文件中按記錄的某關(guān)鍵數(shù)據(jù)項從小到大排序好的
D) 記錄按進入的先后順序存放的,讀出也是按原寫入的先后順序讀出
5.隨機文件是因為 ________。
A) 文件中的內(nèi)容是通過隨機數(shù)產(chǎn)生的
B) 文件中的記錄號是通過隨機數(shù)產(chǎn)生的
C) 可對文件中的記錄根據(jù)記錄號隨機地讀寫
D) 文件中的記錄長度是隨機的
6.文件號可取的值為 ________。
A) 255
B) 511
C) 512
D) 256
7. Print #1, STR$ 中的Print是 ________。
A) 文件的寫語句
B) 在窗體上顯示的方法
C) 子程序名
D) 文件的讀語句
8. 為了建立一個隨機文件,其中每條記錄由多個不同數(shù)據(jù)類型的數(shù)據(jù)項組成,應(yīng)使用 ________。
A) 記錄類型
B) 數(shù)組
C) 字符串類型
D) 變體類型
9. 要從磁盤上讀入一個文件名為“c:\t1.txt” 的順序文件,下列________是正確的語句。
A) F = "c:\t1.txt"
Open F For Input As #2
B) F = "c:\t1.txt"
Open "F" For Input As #2
C) Open c:\t1.txt For Input As #2
D) Open “c:\t1.txt” For Output As #2
10. 要從磁盤上新建一個文件名為“c:\t1.txt” 的順序文件,下列________是正確的語句。
A) F = "c:\t1.txt"
Open F For Append As #2
B) F = "c:\t1.txt"
Open "F" For Output As #2
C) Open c:\t1.txt For Output As #2
D) Open “c:\t1.txt” For Output As #2
11. 以下能判斷是否到達文件尾的函數(shù)是_______。
A)BOF
B)LOC
C)LOF
D)EOF
12. 在順序文件中______。
A)每條記錄的記錄號按從小到大順序
B)每條記錄的長度按從小到大順序
C)按記錄的某個關(guān)鍵數(shù)據(jù)項的排序組織文件
D)記錄按寫入的先后順序存放,并按寫入的先后順序讀出
13. 假定在窗體(名稱為Form1)的代碼窗口中定義如下記錄類型:
Private Type animal
animalName As String*20
aColor As String*10
End Type
在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下事件過程:
Private Sub Command1_Click()
Dim rec As animal
Open "c:\vbTest.dat" For Random As #1 Len=len(reC)
rec.animalName="Cat"
rec.aColor="White"
Put #1,,rec
Close #1
End Sub
則以下敘述中正確的是______。
A)記錄類型animal不能在Form1中定義,必須在標(biāo)準(zhǔn)模塊中定義
B)如果文件c:\vbTest.dat不存在,則Open命令執(zhí)行失敗
C)由于Put命令中沒有指明記錄號,因此每次都把記錄寫到文件的末尾
D)語句“Put #1,,rec”將animal類型的兩個數(shù)據(jù)元素寫到文件中
14. 在隨機文件中______。
A)記錄號是通過隨機數(shù)產(chǎn)生的
B)可以通過記錄號隨機讀取記錄
C)記錄的內(nèi)容是隨機產(chǎn)生的
D)記錄的長度是任意的
15. 在窗體上有一個文本框,代碼窗口中有如下代碼,則下述有關(guān)該段程序代碼所實現(xiàn)的功能的錯誤的說法是______。
Private Sub form_load()
Open "C:\data.txt" For Output As #3
Text1.Text = ""
End Sub
Private Sub text1_keypress(keyAscii As Integer)
If keyAscii = 13 Then
If UCase(Text1.Text) = "END" Then
Close #3
End
Else
Write #3, Text1.Text
Text1.Text = ""
End If
End If
End Sub
A)在C盤當(dāng)前目錄下建立一個文件
B)打開文件并輸入文件的記錄
C)打開順序文件并從文本框中讀取文件的記錄,若輸入End則結(jié)束讀操作
D)在文本框中輸入的記錄按回車鍵存入,然后文本框內(nèi)容被清除
16. 執(zhí)行語句Open"C:StuData.dat"For Input As #2后,系統(tǒng)______。
A)將C盤當(dāng)前文件夾下名為StuData.dat的文件的內(nèi)容讀入內(nèi)存
B)在C盤當(dāng)前文件夾下建立名為StuData.dat的順序文件
C)將內(nèi)存數(shù)據(jù)存放在C盤當(dāng)前文件夾下名為StuData.dat的文件中
D)將某個磁盤文件的內(nèi)容寫入C盤當(dāng)前文件夾下名為StuData.dat的文件中
17. 如果在C盤當(dāng)前文件夾下已存在名為StuData.dat的順序文件,那么執(zhí)行語句
“Open"C:StuData.dat"For Append As #1”之后將 ______。
A)刪除文件中原有的內(nèi)容
B)保留文件中原有的內(nèi)容,可在文件尾添加新內(nèi)容
C)保留文件中原有內(nèi)容,在文件頭開始添加新內(nèi)容
D)以上均不對
18. 以下關(guān)于文件的敘述中,錯誤的是______。
A)使用Append方式打開文件時,文件指針被定位于文件尾
B)當(dāng)以輸入方式(Input)打開文件時,如果文件不存在,則建立一個新文件
C)順序文件各記錄的長度可以不同
D)隨機文件打開后,既可以進行讀操作,也可以進行寫操作
19. 為了把一個記錄型變量的內(nèi)容寫入文件中指定的位置,所使用的語句的格式為______。
A)Get文件號,記錄號,變量名
B)Get文件號,變量名,記錄號
C)Put文件號,變量名,記錄號
D)Put文件號,記錄號,變量名
20. 執(zhí)行語句Open " Tel.dat" For Random As #1 Len = 50后,對文件Tel.dat中的數(shù)據(jù)能夠執(zhí)行的操作是
A)只能寫,不能讀
B)只能讀,不能寫
C)既可以讀,也可以寫
D)不能讀,不能寫
21. 以下程序的功能是:把當(dāng)前目錄下的順序文件smtext1.txt的內(nèi)容讀入內(nèi)存,并在文本框Text1中顯示出來。括號內(nèi)應(yīng)填寫______。
Private Sub Command1_Click()
Dim inData As String
Text1.Text = ""
Open ".\smtext1.txt" ( ) As #1
Do While Not EOF(1)
Input #1, inData
Text1.Text = Text1.Text & inData
Loop
Close #1
End Sub
A)For Input
B)For Output
C)For Random
D)For Binary
22. 在用Open語句打開文件時,如果省略“For方式”,則打開的文件的存取方式是______。
A)順序輸入方式
B)順序輸出方式
C)隨機存取方式
D)二進制方式
23. 在窗體上畫一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框,在文本框中輸入以下字符串: Microsoft Visual Basic Programming
然后編寫如下事件過程:
Private Sub Command1_Click()
Open "d:\temp\outf.txt" For Output As #1
For i = 1 To Len(Text1.Text)
c = Mid(Text1.Text, i, 1)
If c >= "A" And c <= "Z" Then
Print #1, LCase(C)
End If
Next i
Close
End Sub
程序運行后,單擊命令按狃,文件outf.txt中的內(nèi)容是______。
A)MVBP
B)mvbp
C)M V BP
D)mvbp
24. 下面敘述中不正確的是______。
A)對順序文件中的數(shù)據(jù)的操作只能按一定的順序執(zhí)行
B)順序文件結(jié)構(gòu)簡單
C)能同時對順序文件進行讀寫操作
D)順序文件的數(shù)據(jù)是以字符(ASCII碼)的形式存儲的
25. 下面敘述中不正確的是______。
A)隨機文件中記錄的長度不是固定不變的
B)隨機文件由若干條記錄組成,并按記錄號引用各個記錄
C)可以按任意順序訪問隨機文件中的數(shù)據(jù)
D)可以同時對打開的隨機文件進行讀寫操作
26. 以下程序段實現(xiàn)的功能是______。
Option Explicit
Sub appeS_file1()
Dim StringA As String, X As Single
StringA="Appends a new number:"
X=-85
Open "d:\S_file1.dat" For Append As #1
Print #1, StringA; X
Close
End Sub
A)建立文件并輸入字段
B)打開文件并輸出數(shù)據(jù)
C)打開順序文件并追加記錄
D)打開隨機文件并寫入記錄
27. 設(shè)有語句
Open "C:\Test.dat" For Output As #1
則以下錯誤的敘述是
A)該語句打開C盤根目錄下一個已存在的文件Test.Dat
B)該語句在C盤根目錄下建立一個名為Test.Dat的文件
C)該語句建立的文件的文件號為1
D)執(zhí)行該語句后,就可能通過Print #語句向文件Test.Dat中寫入信息
28. 以下敘述中正確的是______。
A)一個記錄中所包含的各個元素的數(shù)據(jù)類型必須相同
B)隨機文件中每個記錄的長度是固定的
C)Open命令的作用是打開一個已經(jīng)存在的文件
D)使用Input #語句可以從隨機文件中讀取數(shù)據(jù)
29. 下面敘述中不正確的是______。
A)若使用Write #語句將數(shù)據(jù)輸出到文件,則各數(shù)據(jù)項之間自動插入逗號,并且將字符串加上雙引號
B)若使用Print #語句將數(shù)據(jù)輸出到文件,則各數(shù)據(jù)項之間沒有逗號分隔,且字符串不加雙引號
C)Write #語句和Print #語句建立的順序文件格式完全一樣
D)write #語句和Print #語句均實現(xiàn)向文件中寫入數(shù)據(jù)
30. 在下面的4個敘述中,______是不正確的。
A)在一個程序執(zhí)行END語句后,系統(tǒng)自動將所有打開的文件關(guān)閉
B)可以使用CLOSE語句關(guān)閉一個或幾個指定的文件
C)使用不帶語句體的CLOSE語句可關(guān)閉所有文件
D)執(zhí)行完一個程序段的所有語句程序自動關(guān)閉文件
二、 填空題
1. 全局記錄類型定義語句應(yīng)出現(xiàn)在 【1】 。
2. 順序文件的建立。建立文件名為" C:\stud1.txt"的順序文件,內(nèi)容來自文本框,每按Enter鍵寫入一條記錄,然后清除文本框的內(nèi)容,直到文本框內(nèi)輸入"END"字符串。
Private Sub Form_Load()
【2】
Text1.text = ""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If 【3】 Then
Close #1
End
Else
【4】
Text1.text = ""
End If
End If
End Sub
3. 將C盤根目錄下的一個文本文件old.txt復(fù)制到新文件new.txt中,并利用文件操作語句將old.txt文件從磁盤上刪除。
Private Sub Command1_Click()
Dim str1$
Open "C:\old.txt" 【5】 As #1
Open "C:\new.txt" 【6】
Do While 【7】
【8】
Print #2 , str1
Loop
【9】
【10】
End Sub
4. 下面程序的功能是將文本文件合并。即將文本文件“t1.txt”合并到“t.txt”文件中,請將程序填寫完整。
Private Command1_Click()
Dim s$
Open "t.txt" 【11】
Open "t1.txt" 【12】
Do While Not EOF(2)
Line Input #2 , s
Print #1 , s
Loop
Close #1, 2#
End Sub
5. 下面程序的功能是將文本文件“t.txt”的內(nèi)容一個字符一個字符地讀入文本框Text1中。請將程序填寫完整。
Private Command1_Click()
Dim InputData as String * 1
Text1.Text = ""
Open "t.txt" For Input As #1
Do While Not EOF(1)
InputData = 【13】
Text1.Text = 【14】
Loop
Close #1
End Sub
6. 將任一整數(shù)插入遞增次序的數(shù)組a中,使數(shù)組仍然有序。數(shù)組a各元素的值從C盤根目錄、文件名為"data.txt"中讀取,各數(shù)據(jù)項間以逗號分隔。請將程序填寫完整。
Option Base 1
Private Form_Click()
Dim b%,a%(),k%,i%
i = 1
Open 【15】 For Input As #1
Do While Not EOF(1)
ReDim Preserve a(i)
Input 【16】
i = i + 1
Loop
b = Val(InputBox("輸入待插入的數(shù)"))
ReDim Preserve a(i)
k = i
Do While 【17】
a(k) = a(k-1)
【18】
Loop
a(k) = b
Close #1
Print "插入后數(shù)組為:"
For k = 1 to i
Print a(K);
Next i
End Sub
7.從指定的任意一個驅(qū)動器中的任何一個文件夾下查找文件(不含漢字),并將選定的文件的完整路徑顯示在文本框Text1中,文件內(nèi)容顯示在文本框Text2中。
Private Sub Form_Load( )
File1.__ 【19】__="*.txt"
End Sub
Private Sub Dir1_Change( )
File1.Path=Dir1.Path
End Sub
Private Sub Dir1_Change( )
Dir1.Path=Drive1.Drive
End Sub
Private Sub File1_Click( )
If Right(File.Path,1)<>"\"Then
Text1.Text=File1.Path & File1.FileName
Else
Text1.Text=File1.Path & File1.FileName
__【20】__
Open Text1.Text For Input As #1
Text2.Text=Input(LOF(1),1)
Close
End Sub
8.Visual Basic提供的對數(shù)據(jù)文件的三種訪問方式為隨機訪問方式、__【21】__和二進制訪問方式。
9.在窗體上畫一個命令按鈕和一個文本框,其名稱分別為Command1和Text1,然后編寫如下事件過程:
Private Sub Command1_Click()
Dim inData As String
Text1.Text = ""
Open "d:\myfile.txt" For 【22】 As #1
Do While 【23】
Input #1, inData
Text1.Text = Text1.Text + inData
Loop
Close #1
End Sub
程序的功能是,打開D盤根目錄下的文本文件myfile.txt,讀取它的全部內(nèi)容并顯示在文本框中。請?zhí)羁铡?BR> 10.在C盤當(dāng)前文件夾下建立一個名為StuData.txt的順序文件。要求用InputBox函數(shù)輸入5名學(xué)生的學(xué)號(StuNo))姓名(StuName)和英語成績(StrEng),并且寫入文件的每個字段都以雙引號隔開,試填寫下面程序段的空白。
Private Sub Form_Click( )
_ _【24】 __
For i=1 To 5
StuNo=InputBox("請輸入學(xué)號")
StuName=InputBox("請輸入姓名")
SutEng=Val(InputBox("請輸入英語成績"))
__【25】__ #1,StuNo,StuName,StuEng
Next i
Close #1
End Sub
2012年計算機二級VB文件練習(xí)題及答案來源:考試大 【考試大:中國最給力的教育考試網(wǎng)站】 2011年11月8日導(dǎo)讀:考試大本套試題主要針對2012年計算機二級VB文件進行強化練習(xí),實用性很強,非常方便考生復(fù)習(xí)。參考答案
一、單選題
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
C B A D C B A A A D D D D B C
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
A B B D C A C D C A C A B C D
二、填空題
【1】 標(biāo)準(zhǔn)模塊 【2】 Open "C:\stud1.txt" For Output As #1
【3】 UCase(Text1.Text) = "END" 【4】 Print #1 , Text1.Text
【5】 For Input 【6】 For Output As #2
【7】 Not EOF(1) 【8】 Line Input #1,str1
【9】 Close #1,#2 【10】 Kill "C:\old.txt"
【11】 For Append As #1 【12】 For Input As #2
【13】 Input(1, #1) 【14】 InputData + Text1.Text
【15】 "C:\data.txt" 【16】 #1, a(i)
【17】 k>1 And a(k-1)>b 【18】 k = k -1
【19】 Pattern 【20】 end if
【21】 順序訪問方式~順序訪問 【22】 input
【23】 Not eof(1)或eof(1)=False 或
eof(1)<>True 【24】 Open "C:StuData.txt" For OutPut As #1
【25】
1.關(guān)于順序文件的描述,下面正確的是 ________。
A) 每條記錄的長度必須相同
B) 可通過編程對文件中的某條記錄方便地修改
C) 數(shù)據(jù)只能以ASCII碼形式存放在文件中,所以可通過文本編輯軟件顯示
D) 文件的組織結(jié)構(gòu)復(fù)雜
2.關(guān)于隨機文件的描述,下面不正確的是 ________。
A) 每條記錄的長度必須相同
B) 一個文件的記錄號不必
C) 可通過編程對文件中的記錄方便地修改
D) 文件的組織結(jié)構(gòu)比順序文件復(fù)雜
3.按文件的組織方式,文件分為 ________。
A) 順序文件和隨機文件
B) ASCII文件和二進制文件
C) 程序文件和數(shù)據(jù)文件
D) 磁盤文件和打印文件
4.順序文件是因為 ________。
A) 文件中按每條記錄的記錄號從小到大排序好的
B) 文件中按每條記錄的長度從小到大排序好的
C) 文件中按記錄的某關(guān)鍵數(shù)據(jù)項從小到大排序好的
D) 記錄按進入的先后順序存放的,讀出也是按原寫入的先后順序讀出
5.隨機文件是因為 ________。
A) 文件中的內(nèi)容是通過隨機數(shù)產(chǎn)生的
B) 文件中的記錄號是通過隨機數(shù)產(chǎn)生的
C) 可對文件中的記錄根據(jù)記錄號隨機地讀寫
D) 文件中的記錄長度是隨機的
6.文件號可取的值為 ________。
A) 255
B) 511
C) 512
D) 256
7. Print #1, STR$ 中的Print是 ________。
A) 文件的寫語句
B) 在窗體上顯示的方法
C) 子程序名
D) 文件的讀語句
8. 為了建立一個隨機文件,其中每條記錄由多個不同數(shù)據(jù)類型的數(shù)據(jù)項組成,應(yīng)使用 ________。
A) 記錄類型
B) 數(shù)組
C) 字符串類型
D) 變體類型
9. 要從磁盤上讀入一個文件名為“c:\t1.txt” 的順序文件,下列________是正確的語句。
A) F = "c:\t1.txt"
Open F For Input As #2
B) F = "c:\t1.txt"
Open "F" For Input As #2
C) Open c:\t1.txt For Input As #2
D) Open “c:\t1.txt” For Output As #2
10. 要從磁盤上新建一個文件名為“c:\t1.txt” 的順序文件,下列________是正確的語句。
A) F = "c:\t1.txt"
Open F For Append As #2
B) F = "c:\t1.txt"
Open "F" For Output As #2
C) Open c:\t1.txt For Output As #2
D) Open “c:\t1.txt” For Output As #2
11. 以下能判斷是否到達文件尾的函數(shù)是_______。
A)BOF
B)LOC
C)LOF
D)EOF
12. 在順序文件中______。
A)每條記錄的記錄號按從小到大順序
B)每條記錄的長度按從小到大順序
C)按記錄的某個關(guān)鍵數(shù)據(jù)項的排序組織文件
D)記錄按寫入的先后順序存放,并按寫入的先后順序讀出
13. 假定在窗體(名稱為Form1)的代碼窗口中定義如下記錄類型:
Private Type animal
animalName As String*20
aColor As String*10
End Type
在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下事件過程:
Private Sub Command1_Click()
Dim rec As animal
Open "c:\vbTest.dat" For Random As #1 Len=len(reC)
rec.animalName="Cat"
rec.aColor="White"
Put #1,,rec
Close #1
End Sub
則以下敘述中正確的是______。
A)記錄類型animal不能在Form1中定義,必須在標(biāo)準(zhǔn)模塊中定義
B)如果文件c:\vbTest.dat不存在,則Open命令執(zhí)行失敗
C)由于Put命令中沒有指明記錄號,因此每次都把記錄寫到文件的末尾
D)語句“Put #1,,rec”將animal類型的兩個數(shù)據(jù)元素寫到文件中
14. 在隨機文件中______。
A)記錄號是通過隨機數(shù)產(chǎn)生的
B)可以通過記錄號隨機讀取記錄
C)記錄的內(nèi)容是隨機產(chǎn)生的
D)記錄的長度是任意的
15. 在窗體上有一個文本框,代碼窗口中有如下代碼,則下述有關(guān)該段程序代碼所實現(xiàn)的功能的錯誤的說法是______。
Private Sub form_load()
Open "C:\data.txt" For Output As #3
Text1.Text = ""
End Sub
Private Sub text1_keypress(keyAscii As Integer)
If keyAscii = 13 Then
If UCase(Text1.Text) = "END" Then
Close #3
End
Else
Write #3, Text1.Text
Text1.Text = ""
End If
End If
End Sub
A)在C盤當(dāng)前目錄下建立一個文件
B)打開文件并輸入文件的記錄
C)打開順序文件并從文本框中讀取文件的記錄,若輸入End則結(jié)束讀操作
D)在文本框中輸入的記錄按回車鍵存入,然后文本框內(nèi)容被清除
16. 執(zhí)行語句Open"C:StuData.dat"For Input As #2后,系統(tǒng)______。
A)將C盤當(dāng)前文件夾下名為StuData.dat的文件的內(nèi)容讀入內(nèi)存
B)在C盤當(dāng)前文件夾下建立名為StuData.dat的順序文件
C)將內(nèi)存數(shù)據(jù)存放在C盤當(dāng)前文件夾下名為StuData.dat的文件中
D)將某個磁盤文件的內(nèi)容寫入C盤當(dāng)前文件夾下名為StuData.dat的文件中
17. 如果在C盤當(dāng)前文件夾下已存在名為StuData.dat的順序文件,那么執(zhí)行語句
“Open"C:StuData.dat"For Append As #1”之后將 ______。
A)刪除文件中原有的內(nèi)容
B)保留文件中原有的內(nèi)容,可在文件尾添加新內(nèi)容
C)保留文件中原有內(nèi)容,在文件頭開始添加新內(nèi)容
D)以上均不對
18. 以下關(guān)于文件的敘述中,錯誤的是______。
A)使用Append方式打開文件時,文件指針被定位于文件尾
B)當(dāng)以輸入方式(Input)打開文件時,如果文件不存在,則建立一個新文件
C)順序文件各記錄的長度可以不同
D)隨機文件打開后,既可以進行讀操作,也可以進行寫操作
19. 為了把一個記錄型變量的內(nèi)容寫入文件中指定的位置,所使用的語句的格式為______。
A)Get文件號,記錄號,變量名
B)Get文件號,變量名,記錄號
C)Put文件號,變量名,記錄號
D)Put文件號,記錄號,變量名
20. 執(zhí)行語句Open " Tel.dat" For Random As #1 Len = 50后,對文件Tel.dat中的數(shù)據(jù)能夠執(zhí)行的操作是
A)只能寫,不能讀
B)只能讀,不能寫
C)既可以讀,也可以寫
D)不能讀,不能寫
21. 以下程序的功能是:把當(dāng)前目錄下的順序文件smtext1.txt的內(nèi)容讀入內(nèi)存,并在文本框Text1中顯示出來。括號內(nèi)應(yīng)填寫______。
Private Sub Command1_Click()
Dim inData As String
Text1.Text = ""
Open ".\smtext1.txt" ( ) As #1
Do While Not EOF(1)
Input #1, inData
Text1.Text = Text1.Text & inData
Loop
Close #1
End Sub
A)For Input
B)For Output
C)For Random
D)For Binary
22. 在用Open語句打開文件時,如果省略“For方式”,則打開的文件的存取方式是______。
A)順序輸入方式
B)順序輸出方式
C)隨機存取方式
D)二進制方式
23. 在窗體上畫一個名稱為Command1的命令按鈕和一個名稱為Text1的文本框,在文本框中輸入以下字符串: Microsoft Visual Basic Programming
然后編寫如下事件過程:
Private Sub Command1_Click()
Open "d:\temp\outf.txt" For Output As #1
For i = 1 To Len(Text1.Text)
c = Mid(Text1.Text, i, 1)
If c >= "A" And c <= "Z" Then
Print #1, LCase(C)
End If
Next i
Close
End Sub
程序運行后,單擊命令按狃,文件outf.txt中的內(nèi)容是______。
A)MVBP
B)mvbp
C)M V BP
D)mvbp
24. 下面敘述中不正確的是______。
A)對順序文件中的數(shù)據(jù)的操作只能按一定的順序執(zhí)行
B)順序文件結(jié)構(gòu)簡單
C)能同時對順序文件進行讀寫操作
D)順序文件的數(shù)據(jù)是以字符(ASCII碼)的形式存儲的
25. 下面敘述中不正確的是______。
A)隨機文件中記錄的長度不是固定不變的
B)隨機文件由若干條記錄組成,并按記錄號引用各個記錄
C)可以按任意順序訪問隨機文件中的數(shù)據(jù)
D)可以同時對打開的隨機文件進行讀寫操作
26. 以下程序段實現(xiàn)的功能是______。
Option Explicit
Sub appeS_file1()
Dim StringA As String, X As Single
StringA="Appends a new number:"
X=-85
Open "d:\S_file1.dat" For Append As #1
Print #1, StringA; X
Close
End Sub
A)建立文件并輸入字段
B)打開文件并輸出數(shù)據(jù)
C)打開順序文件并追加記錄
D)打開隨機文件并寫入記錄
27. 設(shè)有語句
Open "C:\Test.dat" For Output As #1
則以下錯誤的敘述是
A)該語句打開C盤根目錄下一個已存在的文件Test.Dat
B)該語句在C盤根目錄下建立一個名為Test.Dat的文件
C)該語句建立的文件的文件號為1
D)執(zhí)行該語句后,就可能通過Print #語句向文件Test.Dat中寫入信息
28. 以下敘述中正確的是______。
A)一個記錄中所包含的各個元素的數(shù)據(jù)類型必須相同
B)隨機文件中每個記錄的長度是固定的
C)Open命令的作用是打開一個已經(jīng)存在的文件
D)使用Input #語句可以從隨機文件中讀取數(shù)據(jù)
29. 下面敘述中不正確的是______。
A)若使用Write #語句將數(shù)據(jù)輸出到文件,則各數(shù)據(jù)項之間自動插入逗號,并且將字符串加上雙引號
B)若使用Print #語句將數(shù)據(jù)輸出到文件,則各數(shù)據(jù)項之間沒有逗號分隔,且字符串不加雙引號
C)Write #語句和Print #語句建立的順序文件格式完全一樣
D)write #語句和Print #語句均實現(xiàn)向文件中寫入數(shù)據(jù)
30. 在下面的4個敘述中,______是不正確的。
A)在一個程序執(zhí)行END語句后,系統(tǒng)自動將所有打開的文件關(guān)閉
B)可以使用CLOSE語句關(guān)閉一個或幾個指定的文件
C)使用不帶語句體的CLOSE語句可關(guān)閉所有文件
D)執(zhí)行完一個程序段的所有語句程序自動關(guān)閉文件
二、 填空題
1. 全局記錄類型定義語句應(yīng)出現(xiàn)在 【1】 。
2. 順序文件的建立。建立文件名為" C:\stud1.txt"的順序文件,內(nèi)容來自文本框,每按Enter鍵寫入一條記錄,然后清除文本框的內(nèi)容,直到文本框內(nèi)輸入"END"字符串。
Private Sub Form_Load()
【2】
Text1.text = ""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If 【3】 Then
Close #1
End
Else
【4】
Text1.text = ""
End If
End If
End Sub
3. 將C盤根目錄下的一個文本文件old.txt復(fù)制到新文件new.txt中,并利用文件操作語句將old.txt文件從磁盤上刪除。
Private Sub Command1_Click()
Dim str1$
Open "C:\old.txt" 【5】 As #1
Open "C:\new.txt" 【6】
Do While 【7】
【8】
Print #2 , str1
Loop
【9】
【10】
End Sub
4. 下面程序的功能是將文本文件合并。即將文本文件“t1.txt”合并到“t.txt”文件中,請將程序填寫完整。
Private Command1_Click()
Dim s$
Open "t.txt" 【11】
Open "t1.txt" 【12】
Do While Not EOF(2)
Line Input #2 , s
Print #1 , s
Loop
Close #1, 2#
End Sub
5. 下面程序的功能是將文本文件“t.txt”的內(nèi)容一個字符一個字符地讀入文本框Text1中。請將程序填寫完整。
Private Command1_Click()
Dim InputData as String * 1
Text1.Text = ""
Open "t.txt" For Input As #1
Do While Not EOF(1)
InputData = 【13】
Text1.Text = 【14】
Loop
Close #1
End Sub
6. 將任一整數(shù)插入遞增次序的數(shù)組a中,使數(shù)組仍然有序。數(shù)組a各元素的值從C盤根目錄、文件名為"data.txt"中讀取,各數(shù)據(jù)項間以逗號分隔。請將程序填寫完整。
Option Base 1
Private Form_Click()
Dim b%,a%(),k%,i%
i = 1
Open 【15】 For Input As #1
Do While Not EOF(1)
ReDim Preserve a(i)
Input 【16】
i = i + 1
Loop
b = Val(InputBox("輸入待插入的數(shù)"))
ReDim Preserve a(i)
k = i
Do While 【17】
a(k) = a(k-1)
【18】
Loop
a(k) = b
Close #1
Print "插入后數(shù)組為:"
For k = 1 to i
Print a(K);
Next i
End Sub
7.從指定的任意一個驅(qū)動器中的任何一個文件夾下查找文件(不含漢字),并將選定的文件的完整路徑顯示在文本框Text1中,文件內(nèi)容顯示在文本框Text2中。
Private Sub Form_Load( )
File1.__ 【19】__="*.txt"
End Sub
Private Sub Dir1_Change( )
File1.Path=Dir1.Path
End Sub
Private Sub Dir1_Change( )
Dir1.Path=Drive1.Drive
End Sub
Private Sub File1_Click( )
If Right(File.Path,1)<>"\"Then
Text1.Text=File1.Path & File1.FileName
Else
Text1.Text=File1.Path & File1.FileName
__【20】__
Open Text1.Text For Input As #1
Text2.Text=Input(LOF(1),1)
Close
End Sub
8.Visual Basic提供的對數(shù)據(jù)文件的三種訪問方式為隨機訪問方式、__【21】__和二進制訪問方式。
9.在窗體上畫一個命令按鈕和一個文本框,其名稱分別為Command1和Text1,然后編寫如下事件過程:
Private Sub Command1_Click()
Dim inData As String
Text1.Text = ""
Open "d:\myfile.txt" For 【22】 As #1
Do While 【23】
Input #1, inData
Text1.Text = Text1.Text + inData
Loop
Close #1
End Sub
程序的功能是,打開D盤根目錄下的文本文件myfile.txt,讀取它的全部內(nèi)容并顯示在文本框中。請?zhí)羁铡?BR> 10.在C盤當(dāng)前文件夾下建立一個名為StuData.txt的順序文件。要求用InputBox函數(shù)輸入5名學(xué)生的學(xué)號(StuNo))姓名(StuName)和英語成績(StrEng),并且寫入文件的每個字段都以雙引號隔開,試填寫下面程序段的空白。
Private Sub Form_Click( )
_ _【24】 __
For i=1 To 5
StuNo=InputBox("請輸入學(xué)號")
StuName=InputBox("請輸入姓名")
SutEng=Val(InputBox("請輸入英語成績"))
__【25】__ #1,StuNo,StuName,StuEng
Next i
Close #1
End Sub
2012年計算機二級VB文件練習(xí)題及答案來源:考試大 【考試大:中國最給力的教育考試網(wǎng)站】 2011年11月8日導(dǎo)讀:考試大本套試題主要針對2012年計算機二級VB文件進行強化練習(xí),實用性很強,非常方便考生復(fù)習(xí)。參考答案
一、單選題
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
C B A D C B A A A D D D D B C
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
A B B D C A C D C A C A B C D
二、填空題
【1】 標(biāo)準(zhǔn)模塊 【2】 Open "C:\stud1.txt" For Output As #1
【3】 UCase(Text1.Text) = "END" 【4】 Print #1 , Text1.Text
【5】 For Input 【6】 For Output As #2
【7】 Not EOF(1) 【8】 Line Input #1,str1
【9】 Close #1,#2 【10】 Kill "C:\old.txt"
【11】 For Append As #1 【12】 For Input As #2
【13】 Input(1, #1) 【14】 InputData + Text1.Text
【15】 "C:\data.txt" 【16】 #1, a(i)
【17】 k>1 And a(k-1)>b 【18】 k = k -1
【19】 Pattern 【20】 end if
【21】 順序訪問方式~順序訪問 【22】 input
【23】 Not eof(1)或eof(1)=False 或
eof(1)<>True 【24】 Open "C:StuData.txt" For OutPut As #1
【25】