1、国家二级 VB机试(选择题)模拟试卷 1及答案与解析 一、选择题 1 下列有关文件的叙述中,正确的是 ( A)以 Output方式打开一个不存在的文件时,系统将显示出错信息 ( B)以 Append方式打开的文件,既可以进行读操作,也可以进行写操作 ( C)在随机文件中,每个记录的长度是固定的 ( D)无论是顺序文件还是随机文件,其打开的语句和打开方式都是完全相同的 2 下列关于顺序文件的描述中,正确的是 ( A)文件的组织与数据写入的顺序无关 ( B)主要的优点是占空间少,且容易实现记录的增减操作 ( C)每条记录的长度是固定的 ( D)不能像随机文件一样灵活地存取数据 3 下面关于文件叙述
2、中错误的是 ( A) VB数据文件需要先打开,再进行处理 ( B)随机文件每个记录的长度是固定的 ( C)不论是顺序文件还是随机文件,都是数据文件 ( D)顺序文件的记录是顺序存放的,可以按记录号直接访问某个记录 4 以下关于文件的叙述中,错误的是 ( A)顺序文件有多种打开文件的方式 ( B)读取顺序文件的记录时,只能从头至尾逐记录进行 ( C)顺序文件中各记录的长度是固定的 ( D)随机文件一般占用空间比较小 5 用语句 Open”C: teac txt”For Input As#1打开文件后,就可以编程序 ( A)将 C盘根目录下 teac txt文件的内容读入内存 ( B)在 C盘根目
3、录下建立名为 teac txt的文件 ( C)把内存中的数据写入 C盘根目录下名为 teac txt的文件 ( D)将某个磁盘文件的内容写入 C盘根目录下名为 teac txt的文件 6 以下不属于 Visual Basic数据文件的是 ( A)顺序文件 ( B)随机文件 ( C)数据库文件 ( D)二进制文件 7 下面关于 VB数据文件的叙述中错误的是 ( A) VB数据文件不包括 VB的窗体文件 ( B) VB应用程序可以用随机方式读写数据文件 ( C) VB应用程序在读写数据文件之前,必须用 Open语句打开该文件 ( D) VB应用程序不能把一个二维表格中的数据存入文件 8 某人编写了
4、下面的程序,希望能把 Textl文本框中的内容写到 out txt文件中 P Private Sub Command l_Click() Open”out txt”For Output As#2 Print”Textl” Close#2 End Sub 调试时发现没有达到目的,为实现上述目的,应做的修改是 ( A)把 Print”Textl”改为 Print #2, Textl ( B)把 Print”Textl”改为 PrintTextl ( C)把 Print”Fextl”改为 Write”Textl” ( D)把所有 #2改为 #1 9 设有语句 Open”c: Test Dat”For
5、 OutputAs#1则以下叙述中错误的是 ( A)该语句打开 C盘根目录下 的一个文件 Test Dat,如果该文件不存在则出错 ( B)该语句打开 C盘根目录下一个名为 Test Dat的文件,如果该文件不存在则创建该文件 ( C)该语句打开文件的文件号为 1 ( D)执行该语句后,就可以通过 Print#语句向文件 Test Dat中写入信息 10 顺序文件在一次打开期间 ( A)只能读,不能写 ( B)只能写,不能读 ( C)既可读,又可写 ( D)或者只读,或者只写 11 设在工程文件中有一个标准模块,其中定义了如下记录类型: Type Books Name As String*10
6、: TelNum As String*20 End Type 在窗体上画一个名为 Commandl的命令按钮,要求当执行事件过程 Commandl Click时,在顺序文件 Person txt中写入一条 Books类型的记录。下列能够完成该操作的事件过程是 ( A) Private Sub Commandl Click() Dim B As Books Open”Person txt”For OUtout As#1 B Name=InputBox(”输入姓名 ”) B TelNum=InputBox(”输入电话号码 ”) Write#1, B Name, B TelNum Close#1 E
7、nd Sub ( B) Private Sub Commandl Click() Dim B As Books Open”Person txt”For Input As#1 B Name=InputBox(”输入姓名 ”) B TelNum=InputBox(”输入电话号码 ”) Print#1 B Name B TelNum Close#1 End Sub ( C) Private Sub Command l_Click() Dim B As Books Open”Person txt”For Outout As#1 B Name=InputBox(”输入姓名 ”) B TelNum=Inp
8、utBox(”输入电话号码 ”) Write #1 B Close#1 End Sub ( D) Private Sub Command l_Click() Open”Person txt”For Input As#1 Name=InputBox(”输入姓名 ”) TeiNum=InputBox(”输入电话号码 ”) Print #1 Name, TelNum Close#1 End Sub 12 以下关于文件的叙述中,错误的是 ( A)顺序文件中的记录是一个接一个地顺序存放 ( B)随机文件中记录的长度是随机的 ( C)文件被打开后,自动生成一个文件指针 ( D) EOF函数用来测试是否到达
9、文件尾 13 以下叙述中错误的是 ( A) Print#语句和 Write#语句都可以向文件中写入数据 ( B)用 Print#语句和 Write#语句所建立的顺序文件格式总是一样的 ( C)如果用 Print#语句把数据输出到文件,则各数据项之间没有逗号分隔,字符串也不加双 引号 ( D)如果用 Write #语句把数据输出到文件,则各数据项之间自动插入逗号,并且把字符串 加上双引号 14 为了保存数据,需打开顺序文件 “E: UserData txt”,以下正确的命令是 ( A) Open E: UserData txt For Input As#1 ( B) Open”E: UserDa
10、ta txt”For Input As #2 ( C) Open E: UserData txt For Output As#1 ( D) Open”E: UserData txt”For Output As#2 15 为了读取数据,需打开顺序文件 “D: data5 txt”,以下正确的命令是 ( A) Open D: data5 txt For Input As#1 ( B) Open”D: data5 txt”For Input As#2 ( C) Open D: data5 txt For Outout As#1 ( D) Open”D: data5 txt”For Output As
11、#2 16 在窗体上画一个名称为 Commandl的命令按钮,并编写如下程序: Private Type Record IDAs Integer: NameAs String*20 End Type Private Sub Command l_Click() Dim MaxSize, NextChar,MyChar Open”d: temp female txt”For Input As#1 MaxSize=LOF(1) For NextChar=MaxSize To 1 Step-1 MyChar=Input(1, #1) Next NextChar Print EOF(1) Close#1
12、 End Sub 运行程序,单击命 令按钮,其输出结果为 ( A) True ( B) False ( C) 0 ( D) Null 17 窗体上有一个名称为 Textl的文本框,一个名称为 Commandl的命令按钮。以下程序的功能是从顺序文件中读取数据: Private Sub Command l_Click() Dim s1 As String, s2 As String Open”c: d4 dat”For Append As#3 Line Input#3, s1 Line Input#3, s2 Textl Text=s1+s2 Close End Sub 该程序运行时有错误,应该进
13、行的修改是 ( A)将 Open语句中的 For Append改为 For Input ( B)将 Line Input改为 Line ( C)将两条 Line Input语句合并为 Line Input#3, sl, s2 ( D)将 Close语句改为 Close#3 18 窗体上有一个名称为 Commandl的命令按钮。要求编写程序,把文件 f1 txt的内容写到文件 f2 txt中,然后将 f1 txt删除。命令按钮的单击事件过程如下: Private Sub Command l Click() Open”c: f1 txt”For Input As#1 Open”c: f2 txt”
14、For Output As#2 Do While Not EOF(2) Line Input#1, strl Print#2, strl Loop Close Kill”c: n txt” End Sub 该程序运行时发生错误,应该进行的修改是 ( A)打开 f1 txt应该使用 Output方式,打开 f2 txt应该使用 Input方式 ( B) Not EOF(2)应该改为 Not EOF(1) ( C) Line Input应改为 Get ( D) Close语句改为 Close All 19 窗体上有一个名称为 Commandl的命令按钮。其单击事件过程如下: Private Sub
15、 Command l Click() Open”c: f1 txt”For Input As#l: Open”c: f2 txt”For Output As#2 Do While Not EOF(1) Line Input#1 strl: Print#2 strl Loop Close End Sub 以下关于上述程序的叙述中,错误的是 ( A)功能是将 f2 tXt中的内容复制到 f1 txt中 ( B) f1 txt和 f2 txt均是顺序文件 ( C) EOF函数可以判断是否已到文件的末尾 ( D) Close能够把打开的两个文件都关闭 20 文件 d: city txt的内容如下: B
16、eiJing TianJin ShangHai ChongQing 编写如下事件过程: Pfivae Sub Form_Click() DimInD Open”d: citv.txt”For Input As #1 Do While Not EOF(1) Line Input #1, InD Loop Close 1 Print InD End Sub 运行程序,单击窗体,输出结果是 ( A)文件 city txt的全部内容 ( B) BeiJing ( C) ChongQing ( D)空白 21 在窗体上有两个名称分别为 Textl、 Text2的文本框,一个名称为 Commandl的命令
17、按钮。运行后的窗体外观如图所示。 设有如下的类型和变量声明: Private Type Person Name As String*8: Major As Stri8ng*20End TypeDim P As Person 设文本框中的数据已正确地赋值给 Person类型的变量 P,当单击 “保存 ”按钮时,能够正确地把变量中的数据写入随机文件 Test2 dat中的程序段是 ( A) Open”c: Test2 dat”For Output As #1 Put#1, 1, p Close#1 ( B) Open”c: Test2 dat”For Random As#1 Get#1, 1, p
18、 Close#1 ( C) Open”c: Test2 dat”For Random As#1 Len=Len(p)Put #1, 1, p Close #1 ( D) Open”c: Test dat”For Random As#1 Len=Len(p)Get#1, 1, p Close#1 22 关于随机文件,以下叙述中错误的是 ( A)使用随机文件能节约空间 ( B)随机文件记录中,每个字段的长度是固定的 ( C)随机文件中,每个记录的长度相等 ( D)随机文件的每个记录都有一个记录号 23 下面语句中能够打开随机文件的是 ( A) Open”file txt”For Random As
19、#1 ( B) Open”file txt”For Input As #1 ( C) Open”file txt”For Output As #1 ( D) Open”file txt”For Append As#1 24 如果改变驱动器列表框的 Drive属性,则将触发的事件是 ( A) Change ( B) Scroll ( C) KeyDown ( D) KeyUp 25 要使得文件列表框 Filel中只显示文件扩展名为 jpg的图片文件,则下列正确的语句是 ( A) Filel Pattern=”*.jpg” ( B) Filel Parent=”*.jpg” ( C) Filel
20、Path=”*.jpg” ( D) Filel Pattern=”图片文件 |*.jpg” 26 通过一个属性可以获得文件列表框中当前被选中文件的文件名,这个属性是 ( A) Dir ( B) Path ( C) Drive ( D) FileName 27 关于文件操作,以下叙述中正确的是 ( A) Kill命令的作用是删除用户编写的 VB程序文件 ( B)使用 Name命令能够对文件或文件夹重新命名 ( C)用 FileCopy进 行文件拷贝时,可以使用通配符 ( D)用 FileCopy可以将打开的文件复制到指定的文件夹 国家二级 VB机试(选择题)模拟试卷 1答案与解析 一、选择题 1
21、 【正确答案】 C 【试题解析】 根据数据的存取方式和结构不同,文件可分为顺序文件和随机文件。顺序文件中的记录是一个接一个地顺序存放,各个记录的长度可以不相同。随机文件又称直接存取文件,文件中的记录长度是固定的。打开文件的基本格式为: OpenFileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种。以 Append方式打开文件时,文件指针被定位于文件尾,用于数据的追加写入;以 Random方式打开的随机文件可用于随机文件的读与写操作;以 Output方式打开文件时,若文件不存在,则建立一个新文件。 2 【正
22、确答案】 D 【试题解析】 顺序文件结构比较简单,文件中的记录一条接一条按写入顺序存放。在该类文件中,只知道第一条记录的存放位置,当要查找某个数据时,只能从文件头开始,逐步按顺序读取,直至找到要查找的记录为止。顺序文件的缺点是不能灵活地存取和维 护数据,为了修改文件中的某个记录,必须把整个文件读入内存,适用于有一定规律且不经常修改的数据;优点是结构简单,占空间少。 3 【正确答案】 D 【试题解析】 VB数据文件需要先打开,再进行处理,文件分为两类:顺序文件和随机文件。顺序文件的记录是顺序存放的,只能从头到尾逐记录访问,每个记录的长度是不定的;随机文件每个记录的长度是固定的,可以实现随机访问。
23、 4 【正确答案】 C 【试题解析】 数据文件分为两类:顺序文件和随机文件。顺序文件的记录是顺序存放的,每个记录的长度是 不定的,所占空间较小;随机文件每个记录的长度是固定的,可以实现随机访问。顺序文件可以有 OutPut、 Input、 Append等多种打开方式,但是读取记录时只能从头至尾逐记录进行。 5 【正确答案】 A 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、A
24、ppend、 Input、 Random等几种方式。其中,当以 Input方式打开文件时,可以将文件中的数据读入内存。 6 【正确答案】 C 【试题解析】 根据数据性质,文件可分为程序文件和数据文件;根据数据的存取方式和结构,文件可分为顺序文件和随机文件;根据数据的编码方式,文件可以分为 ASC 文件和二进制文件。 7 【正确答案】 D 【试题解析】 根据数据性质,文件可分为程序文件和数据文件,窗体文件属于程序文件而不是数据文件;数据文件可以使用顺序方式读写,也能使用随机方式读写; VB应用程序在读写数据文 件之前,必须用 Open语句打开该文件;可以把一个二维表格中的数据按记录存入数据文件。
25、 8 【正确答案】 A 【试题解析】 本题是一个文件输出的问题。若要对以 Output形式打开的某文件使用 Print方法进行输出,标准格式为 Print文件号,字符串。 9 【正确答案】 A 【试题解析】 根据数据的存取方式和结构不同,文件可分为顺序文件和随机文件。以 Append方式打开文件时,文件指针被定位于文件尾,用于数据的追加写入:以 Random方式打开的随机文件可用于随机文件的读与写操 作;以 Output方式打开文件时,若文件不存在,则建立一个新文件,打开文件后可以使用 Print#语句向文件中写入信息。 10 【正确答案】 D 【试题解析】 打开文件的基本格式为: Open
26、FileName For Mode As#FileNumber。其中打开顺序文件主要有 Output、 Append、 Input几种方式,按照这几种方式打开的顺序文件或者只读,或者只写,不能同时读写。 11 【正确答案】 A 【试题解析】 本题考查的考点是有关文件的。打开顺序文件的基本格式为:Open FileName For Mode As#FileNumber 其中, FileName表示要打开的文件的路径: Mode为文件打开模式: OutPut用于输出、 Append用于追加写入、 Input用于读取; FileNumber为打开文件时指定的句柄 (文件号 )。本题中由于需要写入到文
27、件中,所以 Mode应该为 Output;写入文件时如果写入的是一个自定义类型的变量,则需要把这个变量的每个成员分别写入到文件中,而不能一次性写入整个变量。 12 【正确答案】 B 【试题解析】 根据数据的存取 方式和结构不同,文件可分为顺序文件和随机文件。顺序文件中的记录是一个接一个地顺序存放,各个记录的长度可以不相同。随机文件又称直接存取文件,文件中的记录长度是固定的。文件被打开后,自动生成一个文件指针,刚打开时指向文件的头部,该指针可以逐渐向后移动直至文件尾,此时可以使用 EOF函数来测试是否达到文件尾。 13 【正确答案】 B 【试题解析】 Print#和 Write#语句都用于对顺序
28、文件进行写操作。如果用 Print#语句把数据输出到文件,则各数据项之间没有逗号分隔,字符串也不加双引号;如果用 Write撑语句把数据输出到文件,则各数据项之间自动插入逗号,并且把字符串加上双引号,二者建立的顺序文件格式也有所不同。 14 【正确答案】 D 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个支件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种方式,其中打开顺序文件用
29、于写入使用 Output方 式打开,而且文件名要用双引号括起来。 15 【正确答案】 B 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种方式,其中打开顺序文件用于读取使用 Input方式打开,而且文件名要用双引号括起来。 16 【正确答案】 A 【试题 解析】 LOF函数返回给文件分配的字节数 (即文件的长度 ),与 DOS下用
30、Dir命令所显示的数字相同。 EOF函数用于判断文件指针是否已到文件结尾,如果到达文件末尾,则返回 True。通过使用 EOF函数,测试是否到达文件末尾。本题中的循环遍历了整个文件,因此循环结束时文件指针在文件结尾。 17 【正确答案】 A 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种方式。 Output、 Append、 I
31、nput方式打开的文件进行的读写操作都是以顺序方式进行的,其中 Output、 Append打开的文件主要用来输出数据,与 Print#、 Write#等方法配合使用:以 Input方式打开的文件主要用来读入数据,它与 Input#、 Line Input#语句配合使用。 18 【正确答案】 B 【试题解析】 打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、 Append、 Input、 Random等几种。本题中打开了两个文件,其中 1号文件用于读取, 2号文件用于写入。当进行读取时循环条件应该为 Not EOF
32、(1)即还没有读取到文件结尾。 19 【正确答案】 A 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumbcr。打开方式主要有 Output、Append、 Input、 Random等几种方式。 Output、 Append、 input方式打开的文件进行的读写操作都是以顺序方式进行的,其中 Output、 Append打开的文件主要用来输出数据,与 Print#、 Write#等方法配合使用;以 Input方式
33、打开的文件主要用来读入数据,它与 Input#、 Line Input#语句配合使用。 Line Input#语句从顺序文件中读取一个完整的行,并把它赋给一个字符串变量。本题中 f1 txt和12 txt分别使用 Input和 Output方式打开,所以都是顺序文件; EOF函数可以判断是否已到文件的末尾,一般用作循环条件;程序的功能是将 f1 txt文件的内容复制到 t2 txt中,最后的 Close语句缺省文件号将会关闭所有的活动文件。 20 【正确答案】 C 【试题解析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭
34、这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种方式。以 Input方式打开的文件主要用来读入数据,它与 Input#、 Line Input#语句配合使用。 LineInput#语句从顺序文件中读取一个完整的行,并把它赋给一个字符串变量。本题中依次取出每一行放到 InD中,变量中只能保留最后一次取出的行。 21 【正确答案】 C 【试题解析】 本题考查的考点是有关写随机文件的。随机文件的写操作步骤如下: 步骤 1:用 TypeEndType 语句定义数据类
35、型。 步骤 2:用 Open语句以 Random方式打开随机文件。 格式 Open FileName For Random As# FileNumber Len=记录长度 步骤 3:用 Put#语句将内存中的数据写入磁盘。 格式 Put#文件号, 记录长度 ,变量 步骤 4:用 Close语句关闭打开的文件。由此可看出选项 C)正确。 22 【正确答案】 A 【试题解析】 随机文件又称直接存取文件,文件中的记录长度是固定的,每个记录的长度相等。每个记录都有一个与之对应的记录号,读写记录时只需指定记录号即可。随机 文件由于记录长度固定,所以会造成存储空间的浪费。 23 【正确答案】 A 【试题解
36、析】 Visual Basic程序中关于文件的操作,主要是先打开一个文件,然后对这个文件进行读或写的操作,操作完成后,关闭这个文件。打开文件的基本格式为: Open FileName For Mode As#FileNumber。打开方式主要有 Output、Append、 Input、 Random等几种方式,其中打开随机文件使用 Random方式打开。 24 【正确答案】 A 【试题解析】 驱动器列表框 (DriveListBox)用来显示当前系统中所有有效磁盘驱动器的列表。驱动器列表框的 Drive属性用于设置或返回选择的驱动器,设置时只能通过代码设置而不能在属性窗口中设置。程序运行时,
37、当从驱动器列表框中选择一个新的驱动嚣或通过代码改变其 Drive属性值将触发其 Change事件。 25 【正确答案】 A 【试题解析】 文件列表框的 Pattern属性可返回或设置一个值以决定显示在文件列表框中的文件类型,设置方式为 ”*扩展名 ”。 26 【正确答案】 D 【试题解析】 文件列表框的 Path属性用于设置或返回其当前的目录 (缺省值是当前路径 ),设置时只能通过代码设置而不能在属性窗口中设置; FileName属性可返回所选文件的文件名。文件列表框没有 Dir属性和 Drive属性。 27 【正确答案】 B 【试题解析】 Kill语句的功能是从磁盘中删除任何文件。 FileCopy语句的功能是复制文件,其格式为 FileCopy source, destination,其中当 dmtinmion和source中文件名不相同时,执行复制并重命名文件功能:当 destination和 source中路径不同但文件名相同时,执行复制功能;当 destination中指定的文件已存在时,将覆盖该文件;当 source中指定的文件己打开时,将出错。使用 Name命令能够对文件或文件夹重新命名。