当前位置:首页 >> 电脑基础知识 >>

vb操作题


一. 操作题 1.请根据以下各小题的要求设计Visual Basic应用程序(包 括界面和代码)。 (1)在名称为Form1的窗体中建立一个名称为Cmd1,标题为 "显示"的命令按钮(如图所示)。 要求程序运行后, 如果单击"显示"按钮, 则执行语句 Form1.Print "显示"; 如果单击窗体, 则执行语句Form1.Cls。 *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy3.frm,工程文件名为wy3.vbp。

*************************************************** *******************

(2)在名称为Form1的窗体上建立一个水平滚动条,名称为 HS1,其最大值为100,最小值为0。 要求程序运行后,每次移动滚动框时,都执行语句 Form1.Print HS1.Value。(如图所示)(程序中不能使用 任何其他变量) *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy4.frm,工程文件名为wy4.vbp。

解析:1、新建一个工程,在窗体上添加一个名为"Cmd1"的 按钮,双击这个按钮在弹出的代码窗口中写入 "Form1.Print"显示"",在窗体空白部分双击,在弹出的窗 口中写入"Form1.Cls",然后以文件名wy3.vbp和wy3.frm保 存; 2、滚动条的属性用来标识滚动条的状态,本题中用到的属 性 有 Max ( 滚 动 条 所 能 表 示 的 最 大 值 , 取 值 范 围 为 -32768~32768),Min(滚动条所能表示的最小值,取值范 围同 Max),Value(该属性表示滚动框在滚动条上的当前位 置)。

2. (1)在窗体上建立一个名称为Text1的文本框;然后建 立两个主菜单,标题分别为"销售业态"和"帮助",名称分别 为vbMenu和vbHelp,其中"销售业态"菜单包括"大型百货"、 "连锁超市"、"前店后厂"三个子菜单,名称分别为vbMenu1、 vbMenu2、vbMenu3。要求程序运行后,在"销售业态"的下拉 菜单中选择"大型百货",则在文本框内显示:"百货大楼"; 如果选择"连锁超市",则在文本框内显示"利客隆";如果选 择"前店后厂"则在文本框内显示:"稻香村"。 *注意:

保存时必须存放在考生文件夹下,窗体文件名为wy31.frm, 工程文件名为wy31.vbp。

*************************************************** ********************

(2)在考生文件夹中有文件wy32.vbp及其窗体文件 wy32.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即'号),但不能修改其 它部分。存盘时不得改变文件夹和文件名。 本题描述如下: 窗体上有一个名称为Text1的文本框;两个复选框,名称分 别为Ch1和Ch2,标题分别为"羽毛球"和"乒乓球";一个名称 为C1、标题为"确定"的命令按钮。要求程序运行后,如果只 选中Ch1,单击"确定"命令按钮,则在文本框中显示:"报名 参加羽毛球比赛";如果只选中Ch2,然后单击"确定"命令按 钮,则在文本框中显示:"报名参加乒乓球比赛";如果同时 选中Ch1和Ch2,单击"确定"命令按钮,则在文本框中显示: "报名参加羽毛球和乓乓球比赛";如果Ch1和Ch2都不选,然 后单击"确定"命令按钮,则在文本框中什么都不显示。

解析:1、菜单编辑器窗口分3个部分,即数据区、编辑区和 菜单项显示区。数据区用来输入或修改菜单项、设置属性; 编辑区用来对输入的菜单项进行简单编辑,并可设置菜单的 层次;单击相应的菜单在弹出的代码窗口中加入相应的代 码。 2、CheckBox 控件:该控件可用来提供 True/False 或者 Yes/No 选项。组中可以使用 CheckBox 控件显示多项选择, 从而可选择其中的一项或多项。也可以通过对 Value 属性编 程设置 CheckBox 的值。

3. 在考生文件夹下有工程文件wy41.vbp及窗体文件 wy41.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即 '号),但不能修改其 它部分。存盘时不得改变文件名和文件夹。 本题描述如下: 在名称为Form1的窗体上有三个Label控件和两个名称分别 为COMSTART、COMEXIT,标题分别为"开始"、"退出"的命令 按钮。编写函数ITEM(A,N),其功能是由数字A组成的不多 于N位数的整数,利用该函数求8888-888-88-8的值并把结果

写入考生文件夹下的wy7.dat文件中。执行完毕"确定"按钮, 变成"完成",且无效。

4. 请根据以下各小题的要求设计Visual Basic应用程序 (包 括界面和代码)。 (1)在名称为Form1的窗体上画一个文本框,名称为Text1; 再画二个命令按钮,名称分别为C1、C2,标题分别为"隐藏"、 "显示"(如图所示)。请编写适当的事件过程,使得在运行 时,如果单击"隐藏"按钮,则文本框消失,而如果单击"显 示"按钮,则文本框显示出来。程序中不得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt3.vbp, 窗体文件名为sjt3.frm。

*************************************************** *******************

(2)在窗体上画二个文本框,名称分别为Text1、Text2。 请设置适当的控件属性,并编写适当的事件过程,使得在运 行时,如果在Text1中每输入一个字符,则显示一个"*",同 时在Text2中显示输入的内容(如图所示)。程序中不得使 用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt4.vbp, 窗体文件名为sjt4.frm。

第1小题 文本框的Visible属性: Visible属性用来设置对象的可见性,可以取True和False两 种值,取值为True时,对象可见;取值为False时,将隐藏 对象。 设置Visible属性的语法是: 对象名.Visible = True(-1)或False(0) 解题方法:

新建一个名为Form1的窗体,点击工具箱中的TextBox控件图 标,然后在窗体上拖拉出一个文本框。 点击工具箱中的CommandButton控件图标,然后在窗体上拖 拉出两个命令按钮,通过属性窗口分别设置其Name属性为 "C1"和"C2",Caption属性为"隐藏"和"显示"。 打开代码窗口,输入如下的代码: Private Sub C1_Click() Text1.Visible = False End Sub Private Sub C2_Click() Text1.Visible = True End Sub 按要求保存文件即完成本题。 第2小题 文本框的PasswordChar属性 用来设置文本框中所显示的内容。在默认状态下,该属性的 设置值是空字符串,此时文本框所显示的是键盘所输入的字 符;如果将该属性的值设置为一个非空字符串,则从键盘向 文本框输入字符时,文本框中的实际内容仍是键入的字符, 但显示的是PasswordChar属性所设置的字符串的第一个字 符。 文本框的Change事件

当用户向文本框中输入新信息,或当程序把Text属性设置为 新值时,就会触发Change事件。 解题方法: 新建一个窗体,点击工具箱中的TextBox控件图标,然后在 窗体上分别拖拉出两个文本框,通过属性窗口设置名为 Text1的文本框的PasswordChar属性为"*"。 打开代码窗口,输入如下的代码: Private Sub Text1_Change() Text2.Text = Text1.Text End Sub 按要求保存文件即完成本题。 5. (1)在考生文件夹中有工程文件wy69.vbp及其窗体文件 wy69.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即'号)但不能修改其他 部分。存盘时不得改变文件名和文件夹。 本题描述如下:在窗体上有一个列表框,名称为List1,一 个文本框,名称为Text1,和一个命令按钮,名称为 C1,标 题为"复制"。 要求程序运行后,在列表框中自动建立四个列表项,分别为 "Item1"、"Item2"、"Item3"、"Item4"如果选择列表框中的 一项, 则单击"复制"按钮时, 可以把该项复制到文本框中 (如 图所示)。

Private Sub Command1_Click() Dim i As Integer For i = 0 To 3 Text1.Text = List1 Next i End Sub

(2)在考生文件夹中有工程文件wy70.vbp及其窗体文件 wy70.frm ,该程序是不完整的,请在有?号的地方填入正 确内容,然后删除?及所有注释符(即'号)但不能修改其 它部分。存盘时不得改变文件名和文件夹。 本题描述如下:在窗体有三个复选框,名称分别为 Ch1、Ch2 和Ch3,标题依次为"体育"、"音乐"、"美术",还有一个命 令按钮,名称为C1,标题为"显示"。 要求程序运行后,如果选中某个复选框,则当单击"显示"命 令按钮时,则显示相应的信息。例如,如果选中"体育"和" 音乐"复选框,则单击"显示"命令按钮后,在窗体上显示"我 的爱好是体育音乐"(如图所示);而如果选中"体育"、"音

乐"和"美术"复选框,则单击"显示"按钮后,在窗体上显示" 我的爱好是体育音乐美术"。

解析:1、该题考查考生对ListBox控件的使用,该控件显示 项目列表,从其中可以选择一项或多项。如果项目总数超过 了可显示的项目数,就自动在 ListBox控件上添加滚动条。 语法: ListBox MultiSelect属性:返回或设置一个值,该值指示是否能够 在 FileListBox或ListBox控件中进行复选以及如何进行复 选。在运行时是只读的。 2、CheckBox 控件:该控件可用来提供 True/False 或者 Yes/No 选项。组中可以使用 CheckBox 控件显示多项选择, 从而可选择其中的一项或多项。也可以通过对 Value 属性编 程设置 CheckBox 的值。

6

在考生文件夹下有一个工程文件sj31.vbp,相应的窗

体文件为sj31.frm,此 外还有一个名为datain.txt的文本文件,其内容如下: 32 43 76 58 28 12 98 57 31 42 53 64 75 86 97 13

24 35 46 57 68 79 80 59 37 程序运行后,单击窗体,将把文件datain.txt中的数据 输入到二维数组 Mat 中,在窗体上按5行、5列的矩阵形式显示出来,并输出 矩阵左上-右下对角线 上的数据,如图所示。 在窗体的代码窗口中,已给出 了部分程序,这个程序 不完整,请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的 ? 改为正确的内 容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后的 文件按原文件名存盘。

1、Open语句 Open语句用来打开或建立一个文件,其语法为: Open 文件名 [for 存取方式] [Access 操作方式] [锁定] As [#]文件号 [Len=记录长度]

参数说明: “存取方式”指文件的输入输出方式,可以是以下操作之一: Output 指定顺序输出方式 Input 指定顺序输入方式 Append 指定顺序输出方式,与Output不同的是,用Append方 式打开文件时,文件指针定位于文件尾部,如对文件执行写 操作,则写入数据附加到原来文件的后面。 Random 随机存取方式,也是默认存取方式。 Binary 指定二进制方式文件。在这种方式下,可以用Get和 Put语句对文件中任意字节位置的信息进行读写。 “操作方式”用来指定访问文件类型,可以是下列类型之一: Read 打开只读文件 Write 打开只写文件 Read Write 打开读写文件 “锁定”用来限制其他用户或进程对打开的文件进行读写操 作。锁定类型包括: Lock Shared 允许机器上任何进程读写该文件 Lock Read 不允许其他进程读该文件 Lock Write 不允许其他进程写该文件 Lock Read Write 不允许其他进程读写该文件 “文件号”是1到511之间的某个整数,对打开文件的各种操作 要靠文件号来与文件发生关系。

“记录长度”对于随机方式打开的文件,指记录长度;对于顺 序文件,指缓冲字符数。 2、Input #语句 用来读取顺序文件的数据。语法为: Input #文件号,变量列表 3、Print #语句 用来把数据写入顺序文件。语法为: Print #文件号,[[Spc(n)|Tab(n)] [表达式列表] [;|,]] Spc(n)函数用来在当前的输出位置加入n个空白;Tab(n) 函数用来设置在第n个位置写入数据。 分号表示后续写入的数据将接着当前的数据尾部写入;逗号 表示在当前写入的数据后换行。 4、Close语句 用来关闭一个被打开的文件。语法为: Close #文件号 解题方法: 打开sjt5.vbp中的Form1窗体,打开代码窗口,修改后的代 码如下: Option Base 1 Private Sub Form_Click() Const N = 5 Const M = 5

Dim Mat(M, N) Dim i, j Open App.Path & "\" & "datain.txt" For Input As #1 For i = 1 To N For j = 1 To M Input #1, Mat(i, j) Next j Next i Close #1 Print Print "初始矩阵为:" Print For i = 1 To N For j = 1 To M Print Tab(5 * j); Mat(i, j); Next j Print Next i Print Print "左上 - 右下对角线上的数为:" For i = 1 To N For j = 1 To M

If i = j Then Print Tab(5 * j); Mat(i, j); Next j Next i End Sub 7 按要求进行操作并保存文件即完成本题。 1)在窗体(名称为Form1,KeyPreview属性为True)上画一 个列表框(名称为 List1)和一个文本框(名称为Text1),如图1所示。 编写窗体的KeyDown 事件过程。程序运行后,如果按“A”键,则从键盘上输 入要添加到列表框 中的项目(内容任意,不少于三个);如果按“D”键, 则从键盘上输入要 删除的项目,将其从列表框中删除。程序的运行情况 如图 2所示。 在考生文件夹下有一个工程文件sj17.vbp(相应的窗 体文件名为sj17.frm) ,可以实现上述功能。但这个程序不完整,请把它补 充完整。 要求: 去掉程序中的注释符,把程序中的?改为适当的内 容,使其正确运行,

但不能修改程序中的其他部分。最后把修改后的文 件按原文件名存盘。

图1

图2

Private Sub Form_KeyDown(KeyCode As Integer, _ Shift As Integer) If Chr(KeyCode) = "A" Then Text1.Text = InputBox("请输入要添加的项目") List1.AddItem Text1.Text End If If Chr(KeyCode) = "D" Then Text1.Text = InputBox("请输入要删除的项目") For i = 0 To List1.ListCount If List1.List(i) = Text1.Text Then List1.RemoveItem i End If Next i End If

End Sub

8 在考生文件夹下有一个工程文件sj18.vbp(相应的窗体文 件名为sj18.frm ),其功能是通过调用过程Average求数组的平均值, 请装入该文件。程 序运行后,在四个文本框中各输入一个整数,然后单 击命令按钮,即可求 出数组的平均值,并在窗体上显示出来(如图所示)。 这个程序不完整, 请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的?改为正确的内 容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后 的文件按原文件名存 盘。

,在代码窗口中补充如下代码: Private Function Average(a() As Integer) As Single

Dim Start As Integer, Finish As Integer Dim i As Integer Dim Sum As Integer Start = LBound(a) Finish = UBound(a) Sum = 0 For i = Start To Finish Sum = Sum + a(i) Next i Average = Sum / Finish End Function 9(1)在考生文件夹下有一个工程文件sj45.vbp,相应的窗 体文件为sj45.frm。 其功能是产生30个0~999的随机整数,放入一个数组 中,然后输出其中 的最小值。程序运行后,单击命令按钮(名称为 Command1,标题为"输 出最小值"),即可求出其最小值,并在窗体上显示 出来(如图所示)。 这个程序不完整,请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的?改为正确的内

容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后 的文件按原文件名存 盘。

*************************************************** *******************

Private Sub Command1_Click() Dim arrN(30) As Integer Dim Min As Integer Randomize For i = 1 To 30 arrN(i) = Int(Rnd * 1000) Next i Min = arrN(1) For i = 2 To 30 If Min > arrN(i) Then Min = arrN(i) End If

Next i Print Min End Sub

10 在考生文件夹下有一个工程文件sj46.vbp,相应的窗体 文件为sj46.frm, 在窗体上有一个命令按钮和一个文本框。程序运行 后,单击命令按钮,即 可计算出0~1000范围内不能被7整除的整数的个数, 并在文本框中显示出 来。 在窗体的代码窗口中,已给出了部分程序,其 中计算不能被7整除的 整数的个数的操作在通用过程Fun中实现,请编写该 过程的代码。 要求: 请勿改动程序中的任何内容,只在Function Fun() 和End Function之间 填入你编写的若干语句。最后把修改后的文件按原 文件名存盘。 在Function Fun()和End Function之间补充代码如下: Function Fun() Dim i As Integer, num As Integer

For i = 0 To 1000 If i Mod 7 <> 0 Then num = num + 1 End If Next i Text1.Text = num End Function

8. 请根据以下各小题的要求设计Visual Basic应用程序(包 括界面和代码)。 (1)在名称为Form1的窗体上画两个标签(名称分别为 Label1和Label2,标题 分别为“姓名”和“年龄”)、两个文本框(名称分别为 Text1和Text2, Text属性均为空白)和一个命令按钮(名称为 Command1,标题为“显示” )。然后编写命令按钮的Click事件过程。程序运行 后,在两个文本框中 分别输入姓名和年龄,然后单击命令按钮,则在窗体 上显示两个文本框中 的内容,如图所示。要求程序中不得使用任何变量。

*注意: 存盘时必须存放在考生文件夹下,工程文件名为 sj39.vbp,窗体文件 名为sj39.frm。

*************************************************** *******************

(2)在名称为Form1的窗体上画一个图片框(名称为 Picture1)、一个水平滚 动条(名称为HScroll1)和一个命令按钮(名称为 Command1,标题为“设 置属性”)通过属性窗口在图片框中装入一个图形 , (文 件名为p02.jpg, 位于考生文件夹下),图片框的高度与图形的高度相 同,图片框的宽度任意 (如图1所示)。编写适当的事件过程,程序运行后, 如果单击命令按钮, 则设置水平滚动条的如下属性:

Min Max LargeChange SmallChange

100 1500 100 10

之后就可以通过移动滚动条上的滚动块来放大或缩 小图片框。运行后的窗 体如图2所示。要求程序中不得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为 sj40.vbp,窗体文件 名为sj40.frm。

图1 解析:第1小题:

图2

新建一个工程,在窗体上添加两个标签Label1和Label2,标 题分别为“姓名”和“年龄”,两个文本框Text1和Text2,Text 属性均为空白和一个命令按钮Command1,标题为“显示”。双

击这个按钮添加如下代码: Private Sub Command1_Click() Print Text1.Text + ", 现年 " + Text2.Text + " 岁" End Sub 最后按照题目要求保存文件即可。 第2小题: LoadPicture函数 用来将图形载入到窗体的 Picture属性、PictureBox控件或 Image控件。其语法为: 对象名.Pictuer=LoadPictuer("文件名") 用该函数还可以把窗体或图像控件中的图像清除,其语法 是: 对象名.Pictuer=LoadPictuer()或对象 名.Pictuer=LoadPictuer("")。 Caption属性 用来设置或返回窗体标题栏中所显示的文本信息。 Hscroll1控件用来调节图片框的宽度。滚动条的Max、Min属 性值表示滑块处于滚动条最大、最小位置时所代表的值。 Value属性代表滑块所在位置滚动条的当前值。移动滑块时, 引发Change事件。 解题方法: 新建一个工程,在窗体上添加一个图片框Picture1,一个水

平滚动条HScroll1和命令按钮Command1, 标题为“设置属性”。 在代码窗口中添加如下代码: Private Sub Command1_Click() HScroll1.Max = 1500 HScroll1.Min = 100 HScroll1.SmallChange = 10 HScroll1.LargeChange = 100 End Sub Private Sub HScroll1_Change() Picture1.Width = HScroll1.Value End Sub 按照题目要求保存文件即可完成本题。

11. (1)在考生文件夹下有一个工程文件sj61.vbp,相应 的窗体文件为sj61.frm。在窗体上有一个命令按钮,其名称 为Command1,标题为“添加”;有一个文本框,名称为Text1, 初始内容为空白; 此外还有一个列表框,其名称为List1。 程序运行后,如果在文本框中输入一个英文句子( 由多个 单词组成,各单词之间用一个空格分开),然后单击命令按 钮,程序将把该英文句子分解为单词,并把每个单词作为一 个项目添加到列表框中,如图所示。该程序不完整,请把它 补充完整。

要求:去掉程序中的注释符,把程序中的 ?改为正确的内 容, 使其能正确运行,但不能修改程序中的其他部分。最 后把修改后的文件按原文件名存盘。

*************************************************** *****************

(2)在考生文件夹下有一个工程文件sj62.vbp,相应的窗 体为sj62.frm。窗体中有一个名称为Command1的命令按钮和 一个名称为Timer1的计时器。请在窗体上画一个标签(名称 为Label1,标题为“请输入一个正整数”)、再画一个文本框 (名称为 Text1,初始内容为空白)。已经给出了相应的事 件过程。程序运行后, 在文本框中输入一个正整数,此时 如果按回车键,则可使文本框中的数字每隔0.3秒减 1(倒 计数);当减到0时,倒计数停止,清空文本框,并把焦点 移到文本框中。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内 容, 使其能正确运行,但不能修改程序中的其他部分。最

后把修改后的文件按原文件名存盘。

解析:第一题主要考查了对字符串的操作,包括Mid与Len函 数: Mid(s,i,n)是返回字符串s中从第i个字符开始的连续n个字 符组成的字符串; Len(s)是返回变量s的长度(字节数)。 同时还考查了Do循环语句及ListBox控件的使用: Do语句结构如下: Do [While 条件表达式|Until条件表达式] 语句 [Exit Do] Loop 或 Do 语句 [Exit Do] Loop[While 条件表达式|Until条件表达式] 第二题主要检查了 Timer 控件的使用,在 Timer 中可用

Enable 来控制计时器的开启与关闭, 同时可在其 Timer 事件 中设置触发事件的时间间隔。

12.

在考生文件夹下有一个工程文件sj114.vbp,窗体

如图所示。运行程序时,从 数据文件中读取学生的成绩(均为整数) 。要求编写程 序,统计总人数,并 统计不及格、60~69、70~79、80~89及90~100各分 数段的人数,将统计 结果显示在相应的文本框中。结束程序之前,必须单 击"保存"按钮,保存 统计结果。 注意: 不能修改程序的其他部分和控件属性。程序调试通 过后,运行程序,将 统计结果显示在文本框中,再按"保存"按钮保存数 据,否则无成绩。 最后把修改后的文件按原文件名存盘。

本题主要考查了文件的操作和分支循环结构。

"统计"按钮的主要代码如下: Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer Dim d As Integer, e As Integer, i As Integer Dim score As Single For i = 1 To n score = arr(i) Select Case score Case Is < 60 a = a + 1 Case 60 To 69 b = b + 1 Case 70 To 79 c = c + 1 Case 80 To 89 d = d + 1 Case Else e = e + 1 End Select Next i Text1.Text = n Text2.Text = a

Text3.Text = b Text4.Text = c Text5.Text = d Text6.Text = e End Sub 按要求保存文件即完成本题。

12. 请根据以下各小题的要求设计Visual Basic应用程序 (包括界面和代码)。 (1)在窗体上建立一个二级菜单,该菜单含有"文件"、"帮 助"(名称分别为vbFile和vbHelp)两个主菜单项,其中"文 件"菜单包括"打开"、"关闭"、"退出"三个子菜单项(名称 分别为vbOpen、vbClose、vbExit)(如图所示)。只建立 菜单,不必定义其事件过程。 *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy1.frm,工程文件名为wy1.vbp。

*************************************************** *******************

(2)在名为Form1的窗体上画一个框架,名称为Frm1,标题 为"框架",高度为2500,宽度为4000;再在框架中画一个文 本框,名称为Text1,高度为400,宽度为1200,其位置距框 架的左边框600,距框架的上边框1200,文本框中的初始内 容设置为"文本框"。 *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy2.frm,工程文件名为wy2.vbp。

解析:1、菜单编辑器窗口分3个部分,即数据区、编辑区和 菜单项显示区。数据区用来输入或修改菜单项、设置属性; 编辑区用来对输入的菜单项进行简单编辑,并可设置菜单的 层次。 2、考查考生对 Frame 控件及 Text 控件的 Width,Height, Top,Left 属性的使用,要在框架中画文本框应先选中框架。

13. (1)在考生文件夹下有一个工程文件sj10.vbp,窗体

上有一个单选按钮数组,含三个单选按钮,均没有标题,请 利用属性窗口,为单选按钮依次添加标题为“北京”、“上海”、 “广州”;再添加一个标题为“显示”的命令按钮,如图所示。 程序的功能是在运行时, 如果选中一个单选按钮后, 单击“显 示”按钮,则根据单选按钮的选中情况,在窗体上显示“我的 出生地是北京”、“我的出生地是上海”或“我的出生地是广 州”。要求: 1) 依次添加单选按钮标题为“北京”、“上海”、“广 州”;设初始选中的是“广州”,添加命令按钮标题为“显示”。 2) 去掉程序中的注释符,把程序中的?改为正确 的内容, 使其实现上述功能, 但不能修改程序中的其他部分, 也不能修改控件的其他属性。 最后把修改后的文件按原文件名存盘。

本题考查对控件属性的设置,以及属性的应用 第一题可以在属性窗体中设置各个控件的 Caption 属性,在 程序修改中,要注意控件数组是从 0 开始到 Op1.Count-1 结 束的,即可填写,在判断中如果 OptionButton 被选中它的 Value 应该为 True,这里明白 OptionButton 的是否被选中是 由 Value 属性表示的就可正确填写。后面一个?主要是显示

OptionButton 的标题 Caption 这样该题目就完成了。 14. 在考生文件夹下有工程文件wy54.vbp及窗体文件 wy54.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即 '号),但不能修改其 它部分。存盘时不得改变文件名和文件夹,相应的 dat文件 也保存到考生文件夹下,否则没有成绩。 本题描述如下: 在名称为Form1的窗体上有五个Label控件和两个命令按钮, 数据文件stud1.dat,存放考生的考号、姓名、成绩。 1)自定义一个数据类型stu,字符型数据定长为10。 2)按"开始"按钮后,能从考生文件夹下的stud1.dat 中读 出所有数据并写入考生文件夹下的stud.dat文件中; 3)执行完毕,"开始"按钮变成"完成",且无效(变灰);

语法 Open pathname For mode [Access access] [lock] As [#]filenumber [Len=reclength]用于打开文件 [Private | Public] Type varname

elementname [([subscripts])] As type [elementname [([subscripts])] As type] . . . End Type用于定义包含一个或多个元素的用户自定义的数据 类型。 For counter = start To end [Step step] [statements] [Exit For] [statements] Next [counter]以指定次数来重复执行一组语句。 Close [filenumberlist]关闭 Open 语句所打开的输入/输 出 (I/0) 文件。

15(1)在考生文件夹下有一个工程文件sj10.vbp,窗体上 有一个单选按钮数组,含三个单选按钮,均没有标题,请利 用属性窗口, 为单选按钮依次添加标题为“北京”、 “上海”、 “广 州”;再添加一个标题为“显示”的命令按钮,如图所示。程序 的功能是在运行时,如果选中一个单选按钮后,单击“显示” 按钮, 则根据单选按钮的选中情况, 在窗体上显示“我的出生 地是北京”、“我的出生地是上海”或“我的出生地是广州”。要 求: 1) 依次添加单选按钮标题为“北京”、“上海”、“广

州”;设初始选中的是“广州”,添加命令按钮标题为“显示”。 2) 去掉程序中的注释符,把程序中的?改为正确 的内容, 使其实现上述功能, 但不能修改程序中的其他部分, 也不能修改控件的其他属性。(Private Sub C1_Click() ' ' ' For i = ? To ? If Op1(i).? = True Then Print "我的出生地是" + Op1(i).? End If Next End Sub) 最后把修改后的文件按原文件名存盘。

(2)在考生文件夹下有一个工程文件sj11.vbp,请在Form1 窗体中画三个标签,名称分别为B1、B2、L1,标题分别为“字 号”、“字体”、“计算机等级考试”,其中L1的高为500,宽为 3000; 再在B1、 B2标签的下面画两个组合框, 名称分别为Cb1、 Cb2,并为Cb1添加项目:“10”、“15”、“20”,为Cb2添加项目: “黑体”、“隶书”、“宋体”,以上请在设计时实现。请编写适当

的事件过程,使得在运行时,当在Cb1中选一个字号、在Cb2 中选一个字体,标签L1中的文字立即变为选定的字号和字 体。如图所示。 注意:考生不得修改窗体文件中已经存在的程序, 在结束程序运行之前,必须选择一个字号和字体。必须用窗 体右上角的关闭按钮结束程序,否则无成绩。最后,按原文 件名存盘,程序中不能使用任何变量。(Private Sub Form_Unload(Cancel As Integer) Dim i As Long, j As Long Open "outdata4.txt" For Output As #1 For i = 0 To Cb1.ListCount - 1 Cb1.ListIndex = i For j = 0 To Cb2.ListCount - 1 Cb2.ListIndex = j Print #1, Cb1.Text & Cb2.Text & CInt(L1.Font.Size) & L1.Font Next j Next i Close #1 End Sub)

解析; 本题考查对控件属性的设置,以及属性的应用 第一题可以在属性窗体中设置各个控件的Caption属性,在 程序修改中,要注意控件数组是从0开始到Op1.Count-1结束 的,即可填写,在判断中如果OptionButton被选中它的Value 应该为True,这里明白OptionButton的是否被选中是由 Value属性表示的就可正确填写。后面一个?主要是显示 OptionButton的标题Caption这样该题目就完成了。 第二题考查对ComboBox的了解,ComboBox控件将TextBox控 件和ListBox控件的特性结合在一起-既可以在控件的文本 框部分输入信息,也可以在控件的列表框部分选择一项。 为了添加或删除 ComboBox 控件中的项目, 需要使用 AddItem 或 RemoveItem 方法。设置 List、ListCount、和 ListIndex 属性,使访问 ComboBox 中的项目成为可能。也可以在设计 时使用 List 属性将项目添加到列表中。本题要求在设计时 添加 ComboBox 的 Click 事件是在按下箭头键或者单击鼠标 按钮,对 ComboBox 或 ListBox 控件中的项目进行选择时发 生的。理解这个就可以把变化字体和字号写入相应的 ComboBox 的 Click 事件中

Option Base 1

Private Sub Form_Click() Const N = 5 Const M = 5 ' Dim ? Dim i, j ' Open App.Path & "\" & "datain.txt" ? For i = 1 To N For j = 1 To M ' ? Next j Next i Close #1 As #1

Print Print "初始矩阵为:" Print For i = 1 To N For j = 1 To M Print Tab(5 * j); Mat(i, j);

Next j Print Next i

Print Print "左上 - 右下对角线上的数为:" For i = 1 To N For j = 1 To M ' If Next j Next i End Sub 在考生文件夹下有一个工程文件sj31.vbp,相应的窗体文件 为sj31.frm,此 外还有一个名为datain.txt的文本文件,其内容如下: 32 43 76 58 28 12 98 57 31 42 53 64 75 86 97 13 24 35 46 57 68 79 80 59 37 程序运行后,单击窗体,将把文件datain.txt中的数据 输入到二维数组 Mat 中,在窗体上按5行、5列的矩阵形式显示出来,并输出 矩阵左上-右下对角线 ? Then Print Tab(5 * j); Mat(i, j);

上的数据,如图所示。 在窗体的代码窗口中,已给出 了部分程序,这个程序 不完整,请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的 ? 改为正确的内 容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后的 文件按原文件名存盘。

1、Open语句 Open语句用来打开或建立一个文件,其语法为: Open 文件名 [for 存取方式] [Access 操作方式] [锁定] As [#]文件号 [Len=记录长度] 参数说明: “存取方式”指文件的输入输出方式,可以是以下操作之一: Output 指定顺序输出方式 Input 指定顺序输入方式 Append 指定顺序输出方式,与Output不同的是,用Append方 式打开文件时,文件指针定位于文件尾部,如对文件执行写

操作,则写入数据附加到原来文件的后面。 Random 随机存取方式,也是默认存取方式。 Binary 指定二进制方式文件。在这种方式下,可以用Get和 Put语句对文件中任意字节位置的信息进行读写。 “操作方式”用来指定访问文件类型,可以是下列类型之一: Read 打开只读文件 Write 打开只写文件 Read Write 打开读写文件 “锁定”用来限制其他用户或进程对打开的文件进行读写操 作。锁定类型包括: Lock Shared 允许机器上任何进程读写该文件 Lock Read 不允许其他进程读该文件 Lock Write 不允许其他进程写该文件 Lock Read Write 不允许其他进程读写该文件 “文件号”是1到511之间的某个整数,对打开文件的各种操作 要靠文件号来与文件发生关系。 “记录长度”对于随机方式打开的文件,指记录长度;对于顺 序文件,指缓冲字符数。 2、Input #语句 用来读取顺序文件的数据。语法为: Input #文件号,变量列表 3、Print #语句

用来把数据写入顺序文件。语法为: Print #文件号,[[Spc(n)|Tab(n)] [表达式列表] [;|,]] Spc(n)函数用来在当前的输出位置加入n个空白;Tab(n) 函数用来设置在第n个位置写入数据。 分号表示后续写入的数据将接着当前的数据尾部写入;逗号 表示在当前写入的数据后换行。 4、Close语句 用来关闭一个被打开的文件。语法为: Close #文件号 解题方法: 打开sjt5.vbp中的Form1窗体,打开代码窗口,修改后的代 码如下: Option Base 1 Private Sub Form_Click() Const N = 5 Const M = 5 Dim Mat(M, N) Dim i, j Open App.Path & "\" & "datain.txt" For Input As #1 For i = 1 To N For j = 1 To M Input #1, Mat(i, j)

Next j Next i Close #1 Print Print "初始矩阵为:" Print For i = 1 To N For j = 1 To M Print Tab(5 * j); Mat(i, j); Next j Print Next i Print Print "左上 - 右下对角线上的数为:" For i = 1 To N For j = 1 To M If i = j Then Print Tab(5 * j); Mat(i, j); Next j Next i End Sub

16 请根据以下各小题的要求设计Visual Basic应用程序 (包

括界面和代码)。 (1)在名称为Form1的窗体上画一个标签(名称为Label1, 标题为“输入信息 ”)、一个文本框(名称为Text1,Text属性为空白) 和一个命令按钮( 名称为Command1,标题为“显示”),如图1所示。然后 编写命令按钮的 Click事件过程。程序运行后,在文本框中输入“计算 机等级考试”,然 后单击命令按钮,则标签和文本框消失,并在窗体上 显示文本框中的内容。 运行后的窗体如图2所示。要求程序中不得使用任何 变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为 sj19.vbp,窗体文件 名为sj19.frm。

(2)在名称为Form1的窗体上画一个文本框(名称为Text1, Text属性为“国”

,FontName属性为“黑体”)和一个水平滚动条(名称 为HScroll1),如 图1所示。在属性窗口中对滚动条设置如下属性: Min Max LargeChange SmallChange 10 100 5 2

编写适当的事件过程。程序运行后,如果移动滚动条 上的滚动框,则可扩 大或缩小文本框中的“国”字。运行后的窗体如图2所 示。要求程序中不 得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为 sj20.vbp,窗体文件 名为sj20.frm。

解析 第1小题:

新建一个工程,在窗体上添加一个标签Label1,并将其 Caption属性设置为“输入信息”, 再添加一个内容为空白的文 本框Text1和一个命令按钮Command1, 标题为“显示”。 双击这 个按钮添加如下代码: Private Sub Command1_Click() Label1.Visible = False Text1.Visible = False Print Text1.Text End Sub 最后按照题目要求保存文件即可。 第2小题: 新建一个工程,在窗体上添加一个文本框Text1和一个水平 滚动条HScroll1。文本框的Text属性设置为“国”,FontName 属性设置为“黑体”。设置HScroll1的Min属性为10,Max属性 为100,LargeChange属性为5,SmallChange属性为2。滚动 条的Max、Min属性值表示滑块处于滚动条最大、最小位置时 所代表的值。LargeChange表示当单击滚动条的前后部位时, Value的改变量,SmallChange表示当单击滚动条两端箭头 时,Value的改变量。Value属性代表滑块所在位置滚动条的 当前值。移动滑块时,引发Change事件。 在代码窗口中添加如下代码: Private Sub HScroll1_Change()

Text1.FontSize = HScroll1.Value End Sub 按照题目要求保存文件即可完成本题。

17(1)在考生文件夹下有一个工程文件sj34.vbp,它的功 能是在运行时只显示名 为 Form2的窗体,单击Form2上的“C2”按钮,则显示 名为Form1的窗体; 单击Form1上的“C1”按钮,则Form1的窗体消失。 这个程序并不完整,要求: 1)把Form2设为启动窗体;把Form1上按钮的标题改 为“隐藏”,把Form2 上按钮的标题改为“显示”。 2)去掉程序中的注释符,把程序中的 ?改为正确 的内容,使其实现上述 功能,但不能修改程序中的其他部分。最后把修 改后的文件存盘(。 3)工程文件和窗体文件仍以原来的文件名存盘。 正确程序运行后的界面如图所示。

*************************************************** ******************* 第1小题: 窗体的Visible属性: Visible属性用来设置对象的可见性,可以取True和False两 种值,取值为True时,对象可见;取值为False时,将隐藏 对象。 设置Visible属性的语法是: 对象名.Visible = True(-1)或False(0) 对于窗体对象,还可以用Hide方法来隐藏窗体,其语法是: 窗体名.Hide 解题方法: 打开工程文件sjt5.vbp,执行“工程”菜单的“属性”命令,在 “启动对象”下拉框中选择“Form2”,然后点击“确定”按钮。 选择Form1窗体,再选中“C1”按钮,通过属性窗口设置其 Caption属性为“隐藏”;选择Form2窗体,再选中“C2”按钮, 通过属性窗口设置其Caption属性为“显示”。 根据要求修改程序,修改后的程序为:

Private Sub C1_Click() Form1.Visible = False End Sub Private Sub C2_Click() Form1.Visible = True End Sub 按要求保存文件即完成本题。

18(2)在考生文件夹下有一个工程文件sj35.vbp,它的功 能是在文本框中输入一 个整数,单击“移动”按钮后,如果输入的是正数,滚 动条中的滚动框向 右移动与该数相等的刻度,但如果超过了滚动条的 最大刻度,则不移动, 并且显示“文本框中的数值太大”;如果输入的是负 数,滚动条中的滚动 框向左移动与该数相等的刻度,但如果超过了滚动 条的最小刻度,则不移 动,并且显示“文本框中的数值太小”,如图所示。

要求:去掉程序中的注释符,把程序中的 ?改为正 确的内容,使其实现 上述功能,但不能修改程序中的其他部分,也不能 修改控件的属性。最后 把修改后的程序以原来的文件名存盘。

解题方法: 根据要求修改程序,修改后的程序为: Private Sub C1_Click() If HS1.Value + Text1.Text > HS1.Max Then MsgBox "文本框中的数值太大" ElseIf HS1.Value + Text1.Text < HS1.Min Then MsgBox "文本框中的数值太小" Else HS1.Value = HS1.Value + Text1.Text End If End Sub 按要求保存文件即完成本题。

在考生文件夹下有一个工程文件sj49.vbp。窗体中已经给出 了所有控件(如图所示)。请编写适当的事件过程完成以下 功能: 单击“读数”按钮, 则把考生文件夹下的inab5.txt文件 中的一个整数放入Text1; 单击“计算”按钮, 则计算出大于该 数的第1个素数,并显示在Text2中;单击“存盘”按钮,则把 找到的素数存到考生文件夹下的outab5.txt文件中。 注意:在结束程序运行之前,必须单击“存盘”按钮,把 结果存入outab5.txt文件,否则无成绩。最后把修改后的文 件按原文件名存盘。

程序主要代码如下: Private Sub Command1_Click() Open "in5.txt" For Input As #1 Input #1, a% Text1.Text = a% Close #1 End Sub

Private Function Check(i As Integer) As Boolean For j = 2 To CInt(Sqr(i)) + 1 If i Mod j = 0 Then Check = False Exit Function End If Next j Check = True End Function

Private Sub Command2_Click() Dim i As Integer i = CInt(Text1.Text) If i Mod 2 = 0 Then i = i + 1 Else i = i + 2 End If Do Until Check(i) i = i + 2 Loop Text2.Text = i

End Sub

Private Sub Command3_Click() Open "out5.txt" For Output As #1 Print #1, Text2.Text Close #1 End Sub

19请根据以下各小题的要求设计Visual Basic应用程序(包 括界面和代码)。 (1) 在名称为Form1的窗体上画二个文本框, 名称分别为T1、 T2,初始情况下都没有内容。请编写适当的事件过程,使得 在运行时,在T1中输入的任何字符,立即显示在T2中(如图 所示)。程序中不得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt5.vbp, 窗体文件名为sjt5.frm。

***************************************************

******************* 解题方法: 新建一个名为Form1的窗体,点击工具箱中的TextBox控件图 标,然后在窗体上拖拉出两个文本框。 打开代码窗口,输入如下的代码: Private Sub T1_Change() T2.Text = T1.Text End Sub 按要求保存文件即完成本题。

(2)在名称为Form1的窗体上画一个文本框,名称为Text1; 再画一个命令按 钮, 名称为C1, 标题为"移动" (如图所示) 。 请编写适当的事件过程,使得在运行时,单击"移动"按钮, 则文本框水平移动到窗体的最左端。程序中不得使用任何变 量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt6.vbp, 窗体文件名为sjt6.frm。

解题方法

新建一个名为Form1的窗体,点击工具箱中的TextBox控件图 标,然后在窗体上拖拉出一个文本框。 点击工具箱中的CommandButton控件图标,然后在窗体上拖 拉出一个命令按钮,通过属性窗口设置其Name属性为 "C1",Caption属性为"移动"。 打开代码窗口,输入如下的代码: Private Sub C1_Click() Text1.Left = 0 End Sub 按要求保存文件即完成本题。

20(1)在窗体上建立一个名称为Text1的文本框,然后建立 两个主菜单,标题分别为"学分等级"和"帮助",名称分别 为vbMenu和vbHelp,其中"学分等级"菜单包括"等级A"、" 等级B"、"等级C"三个子菜单,名称分别为vbMenu1、 vbMenu2、vbMenu3。要求程序运行后,如果在"学分等级" 的下拉菜单中选择"等级A",则在文本框内显示:"85分以 上"; 如果选择 "等级B",则在文本框内显示:"75分至85 分"; 如果选择"等级C",则在文本框内显示:"60分至75 分"(要求:不能使用任何变量,直接显示字符串)。

*注意: 保存时必须存放在考生文件夹下,窗体文件名为wy26.frm, 工程文件名为wy26.vbp。

解题方法 *************************************************** ******************** 1、菜单编辑器窗口分3个部分,即数据区、编辑区和菜单项 显示区。数据区用来输入或修改菜单项、设置属性;编辑区 用来对输入的菜单项进行简单编辑,并可设置菜单的层次; 单击相应的菜单在弹出的代码窗口中加入相应的代码。

(2)在考生文件夹中有文件wy27.vbp及其窗体文件 wy27.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即'号),但不能修改其 它部分。存盘时不得改变文件夹和文件名。 本题描述如下: 窗体上有一个名称为Text1的文本框;两个复选框,名称分 别为Ch1和Ch2,标题分别为"英语班"和"计算机班";一个名 称为C1、标题为"确定"命令按钮。要求程序运行后,如果只 选中Ch1,单击"确定"命令按钮,则在文本框中显示:"报名 参加英语班";如果只选中Ch2,单击"确定"命令按钮,则在

文本框中显示:"报名参加计算机班";如果同时选中 Ch1和 Ch2,然后单击"确定"命令按钮,则在文本框中显示:"报名 参加英语 班和计算机班";如果Ch1和Ch2都不选,然后单击 "确定"命令按钮, 则在文本框中什么都不显示。

解析 、CheckBox控件:该控件可用来提供True/False或者Yes/No 选项。组中可以使用CheckBox控件显示多项选择,从而可选 择其中的一项或多项。也可以通过对Value属性编程设置 CheckBox的值。

21 在考生文件夹下有工程文件wy55.vbp及窗体文件 wy55.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即 '号),但不能修改其 它部分。存盘时不得改变文件名和文件夹,相应的 dat文件 也保存到考生文件夹下,否则没有成绩。 本题描述如下: 在名称为Form1的窗体上有五个Label控件和两个命令按钮, 数据文件worker.dat,存放工人的编号、姓名、性别和体重。 1)按"开始"按钮后,能从考生文件夹下的worker.dat中读

出数据并把体重大于平均体重的工人的所有数据写入考生 文件夹下的worker1.dat文件中; 2)执行完毕,"开始"按钮变成"完成",且无效。 解析

dim varname(N)用于定义一维数组,N表示数组元素下标的 上界。 Write #filenumber, [outputlist]将数据写入顺序文件。 If condition Then [statements][Else elsestatements] 据表达式的值有条件地执行一组语句。 Open pathname For mode [Access access] [lock] As [#]filenumber [Len=reclength]用于打开文件 For counter = start To end [Step step] [statements] [Exit For] [statements] Next [counter]以指定次数来重复执行一组语句。 Close [filenumberlist]关闭 Open语句所打开的输入/输出

(I/0) 文件。

见书上

42. 请根据以下各小题的要求设计Visual Basic应用程序 (包 括界面和代码)。 (1)在Form1的窗体上建立一个主菜单,标题为"操作",名 称为Op,该菜单有两个子菜单,其标题分别为"显示"和"清 除",其名称分别为 Dis和Clea,编写适当的事件过程。程 序运行后,如果单击"操作"菜单中的"显示"命令,则在窗体 上显示"等级考试";如果单击"清除"命令,则清除窗体上显 示的内容。程序的运行情况如图所示。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt13.vbp, 窗体文件名为sjt13.frm。

*************************************************** *******************

(2)在Form1的窗体上画一个标签,其名称为Lab1;再画一 个列表框,其名为L1,通过属性窗口向列表框中添加若干个 项目,每个项目的具体内容不限,编写适当的事件过程。程

序运行后,如果双击列表框中的任意一项,则把列表中的项 目数在标签中显示出来。程序的运行情况如图所示。不准使 用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt14.vbp, 窗体文件名为sjt14.frm。

第1小题 菜单的"标题"与"名称"属性: 菜单的"标题"是程序运行和设计过程中用户所看到的菜单 项显示的文字信息;菜单的"名称"是菜单控件名,是该菜单 项区别于其他菜单项以及其他控件的重要标识。相当与一般 控件的Name属性。 Cls方法 清除运行时窗体上或PictureBox中所生成的图形和文本。 解题方法: 新建一个名为Form1的窗体,执行"工具"菜单中的"菜单编辑 器"命令,打开菜单编辑器。 在"标题"栏中输入"操作",在"名称"栏中输入"Op";点击"

下一个"按钮,再点击编辑区的"→"按钮,在"标题"栏中输 入"显示",在"名称"栏中输入"Dis";点击"下一个"按钮, 在"标题"栏中输入"清除",在"名称"栏中输入"Clea"。 打开代码窗口,输入如下的代码: Private Sub Clea_Click() Cls End Sub Private Sub Dis_Click() Print "等级考试" End Sub 按要求保存文件即完成本题。 第2小题 列表框的ListCount属性 用来返回列表项的个数。 解题方法: 新建一个名为Form1的窗体,点击工具箱中的Label控件图 标,然后在窗体上拖拉出一个标签控件,通过属性窗口设置 其Name属性为"Lab1"。 点击工具箱中的ListBox控件图标,然后在窗体上拖拉出一 个列表框,通过属性窗口设置其Name属性为"L1",通过设置 List属性为列表框添加若干列表项。 打开代码窗口,输入如下的代码:

Private Sub L1_DblClick() Lab1.Caption = L1.ListCount End Sub 按要求保存文件即完成本题。 23.(1)在考生文件夹下有工程文件wy60.vbp及窗体文件 wy60.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即 '号),但不能修改其 它部分。存盘时不得改变文件名和文件夹。 本题描述如下: 在名称为Form1的窗体上有一个Label控件,4个Text控件及7 个命令按钮,功能如下: 1)开始启动工程时,界面上除"开始录入"及"退出"按钮之 外,其它按钮均不可用(灰色显示)。 2)单击"开始录入"按钮之后,利用INPUTBOX让用户连续且 必须录入 10个数。若录入为非数字符号,则给出警告"输入 数据无效,请重新输入数值数据,请输入第n个数"。 3)录入完毕后,"开始录入"变灰,其它变为可用状态。 4)按相应的按钮可分别求出所录入数据的"升序"、"降序" 排列及"最大数"和"最小数"并在右侧对应的文本框中显示。 (注意用A(10)存放最大数,A(1)存放最小数) 5)单击"清除"按钮将所有文本框清空。

*************************************************** ********************

(2)在考生文件夹下有工程文件wy61.vbp及窗体文件 wy61.frm,该程序是不完整的,请在有?号的地方填入正确 内容,然后删除?及所有注释符(即 '号),但不能修改其 它部分。存盘时不得改变文件名和文件夹。 本题描述如下: 在名称为Form1,标题为"求和程序"的窗体上有三个Label控 件,两个 Text控件和三个命令按钮。该程序的主要功能是求从1到 Text1中用户输入的任意自然数n的累加和: 1)刚启动工程时,"显示结果"和"清除"按钮均为灰色 2)可以在输入框内输入任意自然数(n值太大时,运算时间 将很长,建议不 超过9位)。在输入数的同时"显示结果"变为可用。当输入为 非数值时,累加结果为0

3)单击"显示结果"可以在Text2中显示累加和,且该框内的 文字不可修改;同时"显示结果"变灰,"清除"变为可用 4)单击"清除",输入框和显示框均显示"0" 5)单击"关闭"按钮结束程序的运行 1、本题主要考查数据排序的方法及最值的求法.排序的一般 方法为: 假设先定义一数组 For i = 1 To N-1 For j = i + 1 To N If Val(a(j)) < Val(a(i)) Then TEMP = a(j) a(j) = a(i) a(i) = TEMP End If Next j Next i 排好之后,则实现了从小到大排列数据的功能。 2、该题主要涉及了CommandButton的Enable属性及累加器的 用法。 1.Command.Enabled [=True|False] True(缺省)允许object对事件作出反应。 False阻止object对事件作出反应。

2.累加器的基本格式为: FOR i =1 TO n S=S+i next i 上述 n的值可变,S和i要先定义后使用。

24(2)在名称为Form1的窗体上画一个文本框(名称为 Text1,Text属性为“国” ,FontName属性为“黑体”)和一个水平滚动条(名称 为HScroll1),如 图1所示。在属性窗口中对滚动条设置如下属性: Min Max LargeChange SmallChange 10 100 5 2

编写适当的事件过程。程序运行后,如果移动滚动条 上的滚动框,则可扩 大或缩小文本框中的“国”字。运行后的窗体如图2所 示。要求程序中不 得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为

sj20.vbp,窗体文件 名为sj20.frm。

图1

图2

第2小题: 新建一个工程,在窗体上添加一个文本框Text1和一个水平 滚动条HScroll1。文本框的Text属性设置为“国”,FontName 属性设置为“黑体”。设置HScroll1的Min属性为10,Max属性 为100,LargeChange属性为5,SmallChange属性为2。滚动 条的Max、Min属性值表示滑块处于滚动条最大、最小位置时 所代表的值。LargeChange表示当单击滚动条的前后部位时, Value的改变量,SmallChange表示当单击滚动条两端箭头 时,Value的改变量。Value属性代表滑块所在位置滚动条的 当前值。移动滑块时,引发Change事件。 在代码窗口中添加如下代码: Private Sub HScroll1_Change()

Text1.FontSize = HScroll1.Value End Sub 按照题目要求保存文件即可完成本题。

2*. 3)单击"显示结果"可以在Text2中显示累加和,且该框 内的文字不可修改;同时"显示结果"变灰,"清除"变为可用 4)单击"清除",输入框和显示框均显示"0" 5)单击"关闭"按钮结束程序的运行

1、本题主要考查数据排序的方法及最值的求法.排序的一般 方法为: 假设先定义一数组 For i = 1 To N-1 For j = i + 1 To N If Val(a(j)) < Val(a(i)) Then TEMP = a(j) a(j) = a(i) a(i) = TEMP

End If Next j Next i 排好之后,则实现了从小到大排列数据的功能。 2、该题主要涉及了CommandButton的Enable属性及累加器的 用法。 1.Command.Enabled [=True|False] True(缺省)允许object对事件作出反应。 False阻止object对事件作出反应。 2.累加器的基本格式为: FOR i =1 TO n S=S+i next i 上述 n的值可变,S和i要先定义后使用。

三.操作题 1请根据以下各小题的要求设计Visual Basic应用程序(包 括界面和代码)。 (1)在名称为Form1的窗体上画一个水平滚动条,其名称为 HScroll1, 滚动框最左边的位置为1000 (即Min属性为1000) , 滚动框最右边的位置为1500(即Max属性为1500), LargeChange属性为50,SmallChange属性为2;然后再画一

个文本框,其名称为Text1,初始内容为空白,编写适当的 事件过程。程序运行后,移动滚动框,则在文本框中显示滚 动框的当前位置。程序的运行情况如图所示。 要求: 1)不得使用任何变量 2)存盘时必须存放在考生文件夹下,工程文件名为 sj59.vbp,窗体文件名为sj59.frm。

*************************************************** *****************

(2) 在名称为Form1的窗体上画一个命令按钮, 其名称为C1, 标题为“移动”,位于窗体的左上部,如图1所示,编写适当的 事件过程。程序运行后,每单击一次窗体,都使得命令按钮 同时向右、向下移动100。程序的运行情况如图2所示。 要求: 1)不得使用任何变量;

2)存盘时必须存放在考生文件夹下,工程文件名 为sj60.vbp,窗体文件名为sj60.frm。

图1

图2 解析:第一题主要考查了水平滚动条的属性的设置与使用, 包括min,Max,SmallChange,LargeChange这些属性的使用, 同时还考查了它的Change事件; 第二题主要考查了按钮控件的Click事件及Left与Top属性。 其中Left与Top属性的值是相对于包含它的容器的左、上边

界的值。 2. (1)在窗体(名称为Form1,KeyPreview属性为True) 上画一个列表框(名称为 List1)和一个文本框(名称为Text1),如图1所示。 编写窗体的KeyDown 事件过程。程序运行后,如果按“A”键,则从键盘上输 入要添加到列表框 中的项目(内容任意,不少于三个);如果按“D”键, 则从键盘上输入要 删除的项目,将其从列表框中删除。程序的运行情况 如图 2所示。 在考生文件夹下有一个工程文件sj17.vbp(相应的窗 体文件名为sj17.frm) ,可以实现上述功能。但这个程序不完整,请把它补 充完整。 要求: 去掉程序中的注释符,把程序中的?改为适当的内 容,使其正确运行, 但不能修改程序中的其他部分。最后把修改后的文 件按原文件名存盘。

图1

图2

*************************************************** ******************* (2)在考生文件夹下有一个工程文件sj18.vbp(相应的窗 体文件名为sj18.frm ),其功能是通过调用过程Average求数组的平均值, 请装入该文件。程 序运行后,在四个文本框中各输入一个整数,然后单 击命令按钮,即可求 出数组的平均值,并在窗体上显示出来(如图所示)。 这个程序不完整, 请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的?改为正确的内 容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后 的文件按原文件名存 盘。

解题方法: 打开工程文件sjt3.vbp和相应的窗体文件名为sjt3.frm,点 击工具箱中的ListBox和TextBox控件图标,然后在窗体上拖 拉出一个列表框、一个文本框。打开代码窗口,补充如下的 代码: Private Sub Form_KeyDown(KeyCode As Integer, _ Shift As Integer) If Chr(KeyCode) = "A" Then Text1.Text = InputBox("请输入要添加的项目") List1.AddItem Text1.Text End If If Chr(KeyCode) = "D" Then Text1.Text = InputBox("请输入要删除的项目") For i = 0 To List1.ListCount If List1.List(i) = Text1.Text Then List1.RemoveItem i End If Next i

End If End Sub 按要求保存文件即完成本题。 第2小题: 本题的考查的是数组的应用,通过调用过程Average求数组 的平均值,Ubound()函数是用来获得数组的上界,Lbound() 函数是获得数组的下界,打开工程文件sjt4.vbp和相应的窗 体文件名为sjt4.frm,在代码窗口中补充如下代码: Private Function Average(a() As Integer) As Single Dim Start As Integer, Finish As Integer Dim i As Integer Dim Sum As Integer Start = LBound(a) Finish = UBound(a) Sum = 0 For i = Start To Finish Sum = Sum + a(i) Next i Average = Sum / Finish End Function 按要求保存文件即完成本题。 1*. 请根据以下各小题的要求设计Visual Basic应用程序

(包括界面和代码)。 (1)在名称为Form1的窗体中建立一个名称为Cmd1,标题为 "显示"的命令按钮(如图所示)。 要求程序运行后, 如果单击"显示"按钮, 则执行语句 Form1.Print "显示"; 如果单击窗体, 则执行语句Form1.Cls。 *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy3.frm,工程文件名为wy3.vbp。

*************************************************** *******************

(2)在名称为Form1的窗体上建立一个水平滚动条,名称为 HS1,其最大值为100,最小值为0。 要求程序运行后,每次移动滚动框时,都执行语句 Form1.Print HS1.Value。(如图所示)(程序中不能使用 任何其他变量) *注意:保存时必须存放在考生文件夹下,窗体文件名为 wy4.frm,工程文件名为wy4.vbp。

1、新建一个工程,在窗体上添加一个名为"Cmd1"的按钮, 双击这个按钮在弹出的代码窗口中写入"Form1.Print"显示 "",在窗体空白部分双击,在弹出的窗口中写入 "Form1.Cls",然后以文件名wy3.vbp和wy3.frm保存; 2、滚动条的属性用来标识滚动条的状态,本题中用到的属 性有Max(滚动条所能表示的最大值,取值范围为 -32768~32768),Min(滚动条所能表示的最小值,取值范 围同Max),Value(该属性表示滚动框在滚动条上的当前位 置)。 2*. 事件过程。程序运行后,选择不同单选按钮时产生的显 示结果见下表
第一种情况 第二种情况 第三种情况 第四种情况 选中的单选按钮 交通工具 到达目标 飞机 广州 飞机 昆明 火车 广州 火车 昆明 单击窗体后产生的结果 (标签中显示的内容) 坐飞机去广州 坐飞机去昆明 坐火车去广州 坐火车去昆明

程序的运行情况如图所示。存盘时,工程文件名为 Sj5.vbp,窗体文件名 为Sj5.frm。 注意: 考生不得修改窗体文件中已经存在的程序,在结束 程序运行之前,必

须至少进行上面的一种操作。退出程序时必须通过 单击窗体右上角的 关闭按钮。

*************************************************** *******************

(2)在考生文件夹下有一个工程文件sj6.vbp,请在窗体 上画二个文本框,其 名称分别为Text1、 Text2, 文本框内容分别设置为“等 级考试”、“计算 机”。然后画一个标签,其名称为 Lab1,高度为375, 宽度为2000。再画 两个单选按钮, 名称分别为Op1和Op2, 标题分别为“交 换”和“连接”, 最后再画一个命令按钮, 其名称为C1, 标题为“确定”, 编写适当的事件 程序。程序运行后,如果选中“交换”单选按钮并单击 “确定”按钮,则 Text1文本框中内容与Text2文本框中内容进行交换,

并在标签处显示“交 换成功”(如图所示);如果选中“连接”单选按钮并单 击“确定”按钮 后,则把交换后的Text1和Text2的内容连接起来,并 在标签处显示连接后 的内容。存盘时,工程文件名为Sj6.vbp,窗体文件 名为sj6.frm。 注意:不得修改已经给出的程序。在结束程序运行之 前,必须选中一个单 选按钮,并单击“确定”按钮。退出程序时必须通过单 击窗体右上角的关 闭按钮,否则可能无成绩。

第1小题 单选按钮的Value属性: Value属性用来表示单选按钮的状态,可以取True和False两 种值,取值为True时,单选按钮是“打开”的,按钮中心有一 个圆点;取值为False时,单选按钮是“关闭”的,按钮是一个 圆圈。

设置单选按钮Value属性的语法是: 单选按钮名.Value = True(-1)或False(0) 由于Value属性是单选按钮的缺省属性,因此在设置该属性 的值的时候,可以省略属性名。 解题方法: 打开工程文件sjt5.vbp,点击工具箱中的Frame控件图标, 然后在窗体上拖拉出两个框架,通过属性窗口分别设置其 Name属性为“F1”和“F2”,Caption属性为“交通工具”和“到达 目标”。 点击工具箱中的OptionButton控件图标,然后在F1中拖拉出 两个单选按钮,通过属性窗口分别设置其Name属性为“Op1” 和“Op2”,Caption属性为“飞机”和“火车”。 点击工具箱中的OptionButton控件图标,然后在F2中拖拉出 两个单选按钮,通过属性窗口分别设置其Name属性为“Op3” 和“Op4”,Caption属性为“广州”和“昆明”。 点击工具箱中的Label控件图标,然后在窗体上拖拉出一个 标签控件,通过属性窗口设置其Name属性为“Lab1”,Width属 性为3000,Height属性为375。 打开代码窗口,输入如下的代码: Private Sub Form_Click() If Op1.Value = True Then If Op3.Value = True Then

Lab1.Caption = "坐飞机去广州" ElseIf Op4.Value = True Then Lab1.Caption = "坐飞机去昆明" End If ElseIf Op2.Value = True Then If Op3.Value Then Lab1.Caption = "坐火车去广州" ElseIf Op4.Value = True Then Lab1.Caption = "坐火车去昆明" End If End If End Sub 按要求进行操作并保存文件即完成本题。 第2小题 解题方法: 打开工程文件sjt6.vbp,点击工具箱中的TextBox控件图标, 然后在窗体上拖拉出两个文本框,通过属性窗口分别设置其 Text属性为“等级考试”和“计算机”。 点击工具箱中的OptionButton控件图标,然后在窗体中拖拉 出两个单选按钮, 通过属性窗口分别设置其Name属性为“Op1” 和“Op2”,Caption属性为“交换”和“连接”。 点击工具箱中的Label控件图标,然后在窗体上拖拉出一个

标签控件,通过属性窗口设置其Name属性为“Lab1”,Width属 性为2000,Height属性为375。 点击工具箱中的CommandButton控件图标,然后在窗体上拖 拉出一个命令按钮,通过属性窗口设置其Name属性为“C1”, Caption属性为“确定”。 打开代码窗口,输入如下的代码: Private Sub C1_Click() If Op1.Value Then Text1.Text = "计算机" Text2.Text = "等级考试" Lab1.Caption = "交换成功" Else Lab1.Caption = Text1.Text + Text2.Text End If End Sub 42. 请根据以下各小题的要求设计Visual Basic应用程序 (包括界面和代码)。 (1)在Form1的窗体上画一个名称为P1的图片框,然后建立 一个主菜单,标题为"操作",名称为Op,该菜单有两个子菜 单,其标题分别为"显示"和"清除",名称分别为Dis和Clea, 编写适当的事件过程。程序运行后,如果单击"操作"菜单中 的"显示"命令,则在图片框中显示"等级考试";如果单击"

清除"命令,则清除图片框中的信息。程序的运行情况如图 所示。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt15.vbp, 窗体文件名为sjt15.frm。程序中不得使用任何变量。

*************************************************** *******************

(2)在Form1的窗体上画一个列表框,名称为L1,通过属性 窗口向列表框中添加4个项目,分别为"AAAA"、"BBBB"、 "CCCC"和"DDDD",编写适当的事件过程,过程中只能使用一 条命令。程序运行后,如果双击列表框中的某一项,则把该 项添加到列表框中。程序的运行情况如图所示。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt16.vbp, 窗体文件名为sjt16.frm。

第3小题 菜单的"标题"与"名称"属性: 菜单的"标题"是程序运行和设计过程中用户所看到的菜单 项显示的文字信息;菜单的"名称"是菜单控件名,是该菜单 项区别于其他菜单项以及其他控件的重要标识。相当与一般 控件的Name属性。 Cls方法 清除运行时窗体上或 PictureBox中所生成的图形和文本。 解题方法: 新建一个名为Form1的窗体,执行"工具"菜单中的"菜单编辑 器"命令,打开菜单编辑器。 在"标题"栏中输入"操作",在"名称"栏中输入"Op";点击" 下一个"按钮,再点击编辑区的"→"按钮,在"标题"栏中输 入"显示",在"名称"栏中输入"Dis";点击"下一个"按钮, 在"标题"栏中输入"清除",在"名称"栏中输入"Clea"。 点击工具箱中的PictureBox控件图标,然后在窗体上拖拉出 一个图像框。 打开代码窗口,输入如下的代码: Private Sub Clea_Click() P1.Cls End Sub Private Sub Dis_Click()

P1.Print "等级考试" End Sub 按要求保存文件即完成本题。 第4小题 列表框的AddItem方法 用来在列表框中插入一行文本,其语法为: 列表框名.AddItem 字符串 [,索引值] 如果省略"索引值",则字符串被添加到列表框的尾部;使用 "索引值"可以将字符串插入列表框中的指定位置。"索引值" 从0开始,到列表项总数-1止。 解题方法: 新建一个名为Form1的窗体, 点击工具箱中的ListBox控件图标,然后在窗体上拖拉出一 个列表框,通过属性窗口设置其Name属性为"L1",通过设置 List属性为列表框添加"AAAA"、"BBBB"、"CCCC"和"DDDD"四 个列表项。 打开代码窗口,输入如下的代码: Private Sub L1_DblClick() L1.AddItem L1.Text End Sub 按要求保存文件即完成本题。 43. (1)在考生文件夹下有一个工程文件sj10.vbp,窗体

上有一个单选按钮数组,含三个单选按钮,均没有标题,请 利用属性窗口,为单选按钮依次添加标题为“北京”、“上海”、 “广州”;再添加一个标题为“显示”的命令按钮,如图所示。 程序的功能是在运行时, 如果选中一个单选按钮后, 单击“显 示”按钮,则根据单选按钮的选中情况,在窗体上显示“我的 出生地是北京”、“我的出生地是上海”或“我的出生地是广 州”。要求: 1) 依次添加单选按钮标题为“北京”、“上海”、“广 州”;设初始选中的是“广州”,添加命令按钮标题为“显示”。 2) 去掉程序中的注释符,把程序中的?改为正确 的内容, 使其实现上述功能, 但不能修改程序中的其他部分, 也不能修改控件的其他属性。 最后把修改后的文件按原文件名存盘。

*************************************************** ******************* (2)在考生文件夹下有一个工程文件sj11.vbp,请在Form1 窗体中画三个标签,名称分别为B1、B2、L1,标题分别为“字 号”、“字体”、“计算机等级考试”,其中L1的高为500,宽为 3000; 再在B1、 B2标签的下面画两个组合框, 名称分别为Cb1、

Cb2,并为Cb1添加项目:“10”、“15”、“20”,为Cb2添加项目: “黑体”、“隶书”、“宋体”,以上请在设计时实现。请编写适当 的事件过程,使得在运行时,当在Cb1中选一个字号、在Cb2 中选一个字体,标签L1中的文字立即变为选定的字号和字 体。如图所示。 注意:考生不得修改窗体文件中已经存在的程序, 在结束程序运行之前,必须选择一个字号和字体。必须用窗 体右上角的关闭按钮结束程序,否则无成绩。最后,按原文 件名存盘,程序中不能使用任何变量。

本题考查对控件属性的设置,以及属性的应用 第一题可以在属性窗体中设置各个控件的Caption属性,在 程序修改中,要注意控件数组是从0开始到Op1.Count-1结束 的,即可填写,在判断中如果OptionButton被选中它的Value 应该为True,这里明白OptionButton的是否被选中是由 Value属性表示的就可正确填写。后面一个?主要是显示 OptionButton的标题Caption这样该题目就完成了。 第二题考查对ComboBox的了解,ComboBox控件将TextBox控 件和ListBox控件的特性结合在一起-既可以在控件的文本 框部分输入信息,也可以在控件的列表框部分选择一项。

为了添加或删除ComboBox控件中的项目,需要使用AddItem 或RemoveItem方法。设置List、ListCount、和ListIndex 属 性,使访问ComboBox中的项目成为可能。也可以在设计时使 用List属性将项目添加到列表中。本题要求在设计时添加 ComboBox的Click事件是在按下箭头键或者单击鼠标按钮, 对ComboBox或 ListBox控件中的项目进行选择时发生的。理 解这个就可以把变化字体和字号写入相应的ComboBox的 Click事件中。 44. 在考生文件夹下有一个工程文件sj49.vbp。窗体中已经 给出了所有控件(如图所示)。请编写适当的事件过程完成 以下功能: 单击“读数”按钮, 则把考生文件夹下的inab5.txt 文件中的一个整数放入Text1; 单击“计算”按钮, 则计算出大 于该数的第1个素数,并显示在Text2中;单击“存盘”按钮, 则把找到的素数存到考生文件夹下的outab5.txt文件中。 注意:在结束程序运行之前,必须单击“存盘”按钮,把 结果存入outab5.txt文件,否则无成绩。最后把修改后的文 件按原文件名存盘。

本题主要考查了对文件的读写操作,要注意的是在文件操作 完毕后使用Close语句将其关闭。 程序主要代码如下: Private Sub Command1_Click() Open "in5.txt" For Input As #1 Input #1, a% Text1.Text = a% Close #1 End Sub Private Function Check(i As Integer) As Boolean For j = 2 To CInt(Sqr(i)) + 1 If i Mod j = 0 Then Check = False Exit Function End If Next j Check = True End Function

Private Sub Command2_Click() Dim i As Integer i = CInt(Text1.Text)

If i Mod 2 = 0 Then i = i + 1 Else i = i + 2 End If Do Until Check(i) i = i + 2 Loop Text2.Text = i End Sub

Private Sub Command3_Click() Open "out5.txt" For Output As #1 Print #1, Text2.Text Close #1 End Sub 操作题 1. 请根据以下各小题的要求设计Visual Basic应用程序 (包 括界面和代码)。 (1)在名称为Form1的窗体上画一个文本框,名称为Text1; 再画二个命令按钮,名称分别为C1、C2,标题分别为"隐藏"、 "显示"(如图所示)。请编写适当的事件过程,使得在运行

时,如果单击"隐藏"按钮,则文本框消失,而如果单击"显 示"按钮,则文本框显示出来。程序中不得使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt3.vbp, 窗体文件名为sjt3.frm。

*************************************************** *******************

(2)在窗体上画二个文本框,名称分别为Text1、Text2。 请设置适当的控件属性,并编写适当的事件过程,使得在运 行时,如果在Text1中每输入一个字符,则显示一个"*",同 时在Text2中显示输入的内容(如图所示)。程序中不得使 用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt4.vbp, 窗体文件名为sjt4.frm。

答案; 第1小题 文本框的Visible属性: Visible属性用来设置对象的可见性,可以取True和False两 种值,取值为True时,对象可见;取值为False时,将隐藏 对象。 设置Visible属性的语法是: 对象名.Visible = True(-1)或False(0) 解题方法: 新建一个名为Form1的窗体,点击工具箱中的TextBox控件图 标,然后在窗体上拖拉出一个文本框。 点击工具箱中的CommandButton控件图标,然后在窗体上拖 拉出两个命令按钮,通过属性窗口分别设置其Name属性为 "C1"和"C2",Caption属性为"隐藏"和"显示"。 打开代码窗口,输入如下的代码: Private Sub C1_Click() Text1.Visible = False End Sub Private Sub C2_Click() Text1.Visible = True End Sub 按要求保存文件即完成本题。

第2小题 文本框的PasswordChar属性 用来设置文本框中所显示的内容。在默认状态下,该属性的 设置值是空字符串,此时文本框所显示的是键盘所输入的字 符;如果将该属性的值设置为一个非空字符串,则从键盘向 文本框输入字符时,文本框中的实际内容仍是键入的字符, 但显示的是PasswordChar属性所设置的字符串的第一个字 符。 文本框的Change事件 当用户向文本框中输入新信息,或当程序把Text属性设置为 新值时,就会触发Change事件。 解题方法: 新建一个窗体,点击工具箱中的TextBox控件图标,然后在 窗体上分别拖拉出两个文本框,通过属性窗口设置名为 Text1的文本框的PasswordChar属性为"*"。 打开代码窗口,输入如下的代码: Private Sub Text1_Change() Text2.Text = Text1.Text End Sub 按要求保存文件即完成本题。 2.(1)在考生文件夹下有一个工程文件sj76.vbp,相应的 窗体文件为sj76.frm,在窗体上有一个命令按钮(名称为

Command1,标题为"计算并输出")和两个文本框(名称分别 为Text1和Text2),如图所示。程序运行后,单击命令按钮, 即可计算出数组Arr中10个数的正数之和pos与负数之和 neg,并分别在两个文本框中显示出来。该程序不完整,请 把它补充完整。 要求: 去掉程序中的注释符,把程序中的 ?改为正确的内容,使 其能正确运行,但不能修改程序中的其他部分,也不能修改 控件的属性。最后用原来的文件名保存工程文件和窗体文 件。

*************************************************** *******************

(2)在考生文件夹下有一个工程文件sj77.vbp,相应的窗 体文件为sj77.frm。在窗体上有两个命令按钮,其名称分别 为Command1、Command2;一个标签,其名称为Label1;一个 计时器,其名称为Timer1, 如图1所示。程序运行后,如果 单击"开始"命令按钮,则该按钮变为禁用,而标题变为"继

续",同时标签中的字体每隔100毫秒增大0.1倍(即变为原 来的1.1倍),如图2所示,字体大小超过100后,自动缩小 为8;如果单击"停止"命令按钮,则该按钮变为禁用,"继续 "命令按钮变为有效,同时标签中的字体停止变化;再次单 击"继续"命令按钮后,标签中的字体继续变化。这个程序不 完整,请仔细阅读已有内容,并把它补充完整,使之能正确 运行。 要求: 去掉程序中的注释符,把程序中的 ? 改为正确的内容,使 其实现上述功能,但不能修改程序中的其他部分。最后把修 改后的文件按原文件名存盘。

答案;第1小题: 本题考查的是数组和For -Next 循环结构语句的使用,打开 工程文件sjt3.vbp,双击Command1命令按钮,在代码窗口中 补充如下代码: Private Sub Command1_Click() Dim Arr Arr = Array(43, 68, -25, 65, -78, 12, -79, 43, -94,

72) pos = 0 neg = 0 For k = 1 To 10 If Arr(k) >= 0 Then pos = pos + Arr(k) Else neg = neg + Arr(k) End If Next k Text1.Text = "正数之和为:" & Str(pos) Text2.Text = "负数之和为:" & Str(neg) End Sub 第二小题: 该题主要考查了计时控件的使用,在计时控件中可以通过设 置 Interval 属性值来设定计时间隔(毫秒),通过设置 Enabled 属性来设置开始、停止计时,在计时器的 Timer 事 件中编写代码,当计时器到达计时时间间隔时,它的 Timer 事件将被触发。 3.在考生文件夹下有一个工程文件sj114.vbp,窗体如图所 示。运行程序时,从 数据文件中读取学生的成绩(均为整数) 。要求编写程

序,统计总人数,并 统计不及格、60~69、70~79、80~89及90~100各分 数段的人数,将统计 结果显示在相应的文本框中。结束程序之前,必须单 击"保存"按钮,保存 统计结果。 注意: 不能修改程序的其他部分和控件属性。程序调试通 过后,运行程序,将 统计结果显示在文本框中,再按"保存"按钮保存数 据,否则无成绩。 最后把修改后的文件按原文件名存盘。

答案;本题主要考查了文件的操作和分支循环结构。 "统计"按钮的主要代码如下: Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer Dim d As Integer, e As Integer, i As Integer Dim score As Single For i = 1 To n

score = arr(i) Select Case score Case Is < 60 a = a + 1 Case 60 To 69 b = b + 1 Case 70 To 79 c = c + 1 Case 80 To 89 d = d + 1 Case Else e = e + 1 End Select Next i Text1.Text = n Text2.Text = a Text3.Text = b Text4.Text = c Text5.Text = d Text6.Text = e End Sub 按要求保存文件即完成本题。

*************************************************** *****************

请根据以下各小题的要求设计Visual Basic应用程序(包括 界面和代码)。 (1)在Form1的窗体上画一个名称为P1的图片框,然后建立 一个主菜单,标题为"操作",名称为Op,该菜单有两个子菜 单,其标题分别为"显示"和"清除",名称分别为Dis和Clea, 编写适当的事件过程。程序运行后,如果单击"操作"菜单中 的"显示"命令,则在图片框中显示"等级考试";如果单击" 清除"命令,则清除图片框中的信息。程序的运行情况如图 所示。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt15.vbp, 窗体文件名为sjt15.frm。程序中不得使用任何变量。

*************************************************** *******************

(2)在Form1的窗体上画一个列表框,名称为L1,通过属性

窗口向列表框中添加4个项目,分别为"AAAA"、"BBBB"、 "CCCC"和"DDDD",编写适当的事件过程,过程中只能使用一 条命令。程序运行后,如果双击列表框中的某一项,则把该 项添加到列表框中。程序的运行情况如图所示。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt16.vbp, 窗体文件名为sjt16.frm。

第3小题 菜单的"标题"与"名称"属性: 菜单的"标题"是程序运行和设计过程中用户所看到的菜单 项显示的文字信息;菜单的"名称"是菜单控件名,是该菜单 项区别于其他菜单项以及其他控件的重要标识。相当与一般 控件的Name属性。 Cls方法 清除运行时窗体上或 PictureBox中所生成的图形和文本。 解题方法: 新建一个名为Form1的窗体,执行"工具"菜单中的"菜单编辑 器"命令,打开菜单编辑器。 在"标题"栏中输入"操作",在"名称"栏中输入"Op";点击"

下一个"按钮,再点击编辑区的"→"按钮,在"标题"栏中输 入"显示",在"名称"栏中输入"Dis";点击"下一个"按钮, 在"标题"栏中输入"清除",在"名称"栏中输入"Clea"。 点击工具箱中的PictureBox控件图标,然后在窗体上拖拉出 一个图像框。 打开代码窗口,输入如下的代码: Private Sub Clea_Click() P1.Cls End Sub Private Sub Dis_Click() P1.Print "等级考试" End Sub 按要求保存文件即完成本题。 第4小题 列表框的AddItem方法 用来在列表框中插入一行文本,其语法为: 列表框名.AddItem 字符串 [,索引值] 如果省略"索引值",则字符串被添加到列表框的尾部;使用 "索引值"可以将字符串插入列表框中的指定位置。"索引值" 从0开始,到列表项总数-1止。 解题方法: 新建一个名为Form1的窗体,

点击工具箱中的ListBox控件图标,然后在窗体上拖拉出一 个列表框,通过属性窗口设置其Name属性为"L1",通过设置 List属性为列表框添加"AAAA"、"BBBB"、"CCCC"和"DDDD"四 个列表项。 打开代码窗口,输入如下的代码: Private Sub L1_DblClick() L1.AddItem L1.Text End Sub 按要求保存文件即完成本题。 (1)在考生文件夹下有一个工程文件sj57.vbp,相应的窗 体文件为sj57.frm。在窗体上有一个名称为Command1、标题 为“计算”的命令按钮;两个水平滚动条, 名称分别为 Hscroll1和Hscroll2,其Max属性均为100,Min属性均为1; 四个标签,名称分别为Label1、Label2、Label3和Label4, 标题分别为“运算数1”、“运算数2”、“运算结果”和空白;此 外还有一个包含四个单选按钮的控件数组, 名称为 Option1,标题分别为“+”、“-”、“*”和“/”, 如图1所示。程 序运行后,移动两个滚动条中的滚动框,用滚动条的当前值 作为运算数,如果选中一个单选钮,然后单击命令按钮,相 应的计算结果将显示在Label4中, 程序运行情况如图2所 示。这个程序不完整,请把它补充完整,并能正确运行。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内

容, 使其能正确运行,但不能修改程序中的其他部分,也 不能修改控件的属性。最后用原来的文件名保存工程文件和 窗体文件。

图1

*************************************************** *****************

(2)在考生文件夹下有一个工程文件sj58.vbp,相应的窗 体文件为sj58.frm。在窗体上有一个命令按钮, 其名称为 Command1,标题为“输入/显示”;此外还有一个文本框,其名 称为Text1,初始内容为空白。程序的功能是,程序运行后, 单击命令按钮,显示输入对话框,在对话框中输入某个月份 的数值(1~12), 然后单击“确定”按钮,即可在文本框中 输出该月份所在的季节。 例如输入5, 将输出“5月份是夏季”, 如图所示。该程序不完整,请把它补充完整。 要求:去掉程序中的注释符,把程序中的 ?改为正确的内 容, 使其能正确运行,但不能修改程序中的其他部分。最

后用原来的文件名保存工程文件和窗体文件。

第一题主要考查了水平滚动条控件的使用, 包括其Max, Min, LargeChange,SmallChange属性的使用。同时还考查了单选 按钮以及Select Case语句的使用。 第二题主要考查了Select Case语句的使用,关于Select Case语句的结构如下: Select Case a Case c1,c2,..,cn:语句1 Case d1,d2,...,dn:语句2 …… Case Else:语句n End Select

在考生文件夹下有一个工程文件sj113.vbp,其窗体上画有2 个名称分别为 Text1、Text2的文本框,其中Text1可多行显示。请画

2个名称为Command1、 Command2,标题为"产生数组"、"查找"的命令按钮。 如图所示。程序功 能如下: 1)单击"产生数组"按钮,则用随机函数生成10个0~ 100之间(不含0和 100)互不相同的数值,并将它们保存到一维数组a 中,同时也将这10个 数值显示在Text1文本框内; 2)单击"查找"按钮将弹出输入对话框,接收用户输入 的任意一个数,并 在一维数组a中查找该数,若查找失败,则在Text2 文本框内显示该数" 不存在于数组中";否则给出该数在数组中的位置。 要求: 请去掉程序中的注释符,把程序中的 ?改为正确的 内容,使其实现上述 功能,但不能修改窗体文件中已经存在的控件和程 序。最后把修改后的 文件按原文件名存盘。

本题主要考查Rnd函数的使用和相同数值的判断。 为了生成某个范围内的随机数,可以使用一下公式: Int((upperbound - lowerbound+1) * Rnd + lowerbound) 这里,upperbound是随机整数范围的上限,而lowerbound则 是随机整数范围的下限。 修改后的主要代码如下: Private Sub Command1_Click() Text1.Text = "": For i = 1 To 10 a(i) = Fix(Rnd * 99 + 1) For j = 1 To i - 1 If a(i) = a(j) Then i = i - 1 Exit For End If Next j Next i Text2.Text = ""

For i = 1 To 10 Text1.Text = Text1.Text + Str(a(i)) + Space(2) 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) = num Then Text2.Text = Str(num) + "是数组中的第" + Str(i) + "个值" Exit For End If Next i If i > 10 Then Text2.Text = Str(num) + "不存在于数组中" End If End Sub 按要求保存文件即完成本题。 (1)在考生文件夹中有工程文件sj126.vbp,其中的窗体如 图所示。程序刚运行

时,会生成一个有10个元素的整型数组。若选中"查 找最大值"(或"查找最 小值")单选按钮,再单击"查找"按钮,则找出数组 中的最大值(或最小值 ),并显示在标签Label2中。请去掉程序中的注释符, 把程序中的 ?改为 正确的内容。 注意: 考生不得修改窗体文件中已经存在的程序。最后把 修改后的文件按原文 件名存盘。

*************************************************** *******************

(2)在考生文件夹下有一个工程文件sj127.vbp(相应的 窗体文件名为sjt4.frm ),其功能是通过调用过程FindMax求数组的最大值, 请装入该文件。程 序运行后,在四个文本框中各输入一个整数,然后单 击命令按钮,即可求

出数组的最大值,并在窗体上显示出来(如图所示)。 这个程序不完整, 请把它补充完整,并能正确运行。 要求: 去掉程序中的注释符,把程序中的?改为正确的内 容,使其实现上述功 能,但不能修改程序中的其他部分。最后把修改后 的文件按原文件名存 盘。

第1小题: 本题主要考查了数组中最大值和最小值的算法。 修改后的代码如下: Private Sub Command1_Click() x = a(1) y = a(1) For i = 2 To 10 If Option1.Value = True Then If a(i) > x Then x = a(i)

End If ElseIf a(i) < y Then y = a(i) End If Next If Option1.Value = True Then Label2.Caption = x Else Label2.Caption = y End If End Sub 按要求保存文件即可。 第2小题 本题考查LBound、UBound函数以及FOR循环语句。 LBound函数:LBound(arrayname[, dimension]),该函数是 用来返回数组的下界的,其中arrayname是必需的,它指数 组变量的名称,dimension是可选的,用来指定返回哪一维 的下界。 UBound函数:UBound(arrayname[, dimension]),该函数是 用来返回数组的上界的,其中arrayname是必需的,它指数 组变量的名称,dimension是可选的,用来指定返回哪一维 的上界。

For语句语法: For counter = start To end [Step step] [statements] [Exit For] [statements] Next [counter] 本题的完整代码如下: Option Base 1 Private Function FindMax(a() As Integer) Dim Start As Integer Dim Finish As Integer, i As Integer Start = LBound(a) Finish = UBound(a) Max = a(Start) For i = Start To Finish If a(i) > Max Then Max = a(i) Next i FindMax = Max End Function Private Sub Command1_Click() Dim arr1 Dim arr2(4) As Integer

arr1 = Array(Val(Text1.Text), Val(Text2.Text), Val(Text3.Text), Val(Text4.Text)) For i = 1 To 4 arr2(i) = CInt(arr1(i)) Next i M = FindMax(arr2) Print "最大值是: "; M End Sub 按要求保存文件即可完成本题。 在考生文件夹下有工程文件wy41.vbp及窗体文件wy41.frm, 该程序是不完整的,请在有?号的地方填入正确内容,然后 删除?及所有注释符(即 '号),但不能修改其它部分。存 盘时不得改变文件名和文件夹。 本题描述如下: 在名称为Form1的窗体上有三个Label控件和两个名称分别 为COMSTART、COMEXIT,标题分别为"开始"、"退出"的命令 按钮。编写函数ITEM(A,N),其功能是由数字A组成的不多 于N位数的整数,利用该函数求8888-888-88-8的值并把结果 写入考生文件夹下的wy7.dat文件中。执行完毕"确定"按钮, 变成"完成",且无效。

2)在Form1的窗体上画一个标签,其名称为Lab1;再画一个列表框,其名为L1,通过属 性窗口向列表框中添加若干个项目,每个项目的具体内容不限,编写适当的事件过程。 程序运行后,如果双击列表框中的任意一项,则把列表中的项目数在标签中显示出来。 程序的运行情况如图所示。不准使用任何变量。 *注意: 存盘时必须存放在考生文件夹下,工程文件名为sjt14.vbp,窗体文件名为sjt14.frm。

Private Sub L1_DblClick() Lab1.Caption = L1.ListCount End Sub


相关文章:
vb16道操作题(含答案):.doc
vb16道操作题(含答案): - Vb 操作题 第 1 页 共 8 页 (新)0
VB24题操作题答案.doc
VB24题操作题答案_IT认证_资格考试/认证_教育专区。visual basic操作题 1、编写程序,使用多分支(Select Case)语句结构对输入的学生成绩给出A、B、C和D四个 ...
高中学业水平考试 VB操作题.doc
高中学业水平考试 VB操作题 - Vb 算法 程序题汇总 目录 1、输入 5 个
VB操作题.doc
VB操作题 - 一、 考试题程序 1、启动 VB,打开工程文件“C:\MyExa
vb操作题整理(全).doc
vb操作题整理(全) - '对文本框中输入的大写英文明文,一一转换成小写
信息会考VB操作题.doc
信息会考VB操作题 - 信息会考 VB 操作题 A类 需界面设计 A01、制作一
VB二十道常见编程(期末操作题).doc
VB二十道常见编程(期末操作题) - 1.求随机 10 个整数的最大值、最小值、
VB操作题.doc
VB操作题 - VB操作题 1、 [题目] 随机生成一个4行4列的矩阵, 要求数
信息技术高中会考VB模块操作题题库.doc
信息技术高中会考VB模块操作题题库 - 信息技术高中会考VB模块操作题题库 第1 题 打开“Y:\4619”文件夹中的文件:“d1.vbp”,进行以下操作并保存。 在VB代码...
vb二级基本操作题.doc
vb二级基本操作题 - 第一章:基本操作题 ⑴在名称为 Form1 的窗体上画一
VB上机操作题综合_图文.doc
VB上机操作题综合 - VB 程序设计《暴风影音》 程序运行前: 程序运行后:
vb操作题代码(1).doc
vb操作题代码(1) - 土木 1302 班。 1.判断素数: Dim i&am
VB基本操作题_图文.doc
VB基本操作题 - 基本操作题,请根据以下各小题的要求设计 Visual Bas
VB实验操作题集连学习答案.doc
VB实验操作题集连学习答案_IT认证_资格考试/认证_教育专区。VB实验操作题集连学习答案 操作题一 1.??在学生文件夹中有工程文件 sj126.vbp ?其中的窗体如图所示...
VB操作题.txt
VB操作题 - 四川高中程序操作(36分)专项模拟题 一、程序的顺序结构(1至8
VB操作题部分.doc
VB操作题部分 - Vb 填空题、操作题部分试题 切勿丢失 VB 操作题部分 V
计算机二级VB操作题.doc
计算机二级VB操作题 - 所有操作题 1、请根据以下要求设计Visual Bas
高中信息技术学业水平测试 VB操作题.doc
高中信息技术学业水平测试 VB操作题 - Vb 算法 程序题汇总 目录 1、输入
全国计算机二级VB上机题库(题+答案).doc
全国计算机二级VB上机题库(题+答案) - 一、基本操作题 下面出现的“考生文件
2012年江苏高中信息技术学业水平测试vb操作题带答案.doc
2012年江苏高中信息技术学业水平测试vb操作题带答案 - 祝您考试成功! Vb
更多相关标签: