1、 晨曦制作 第 1 页 共 14 页 全国计算机等级考试二级 VB上机题库 (第一套 ) 一、 基本操作题( 2 小题,每小题 15 分,共计 30 分) 1在名称为 Form1 的窗体上画一个文本框,其名称为 T1,宽度和高度分别为 1400和 400;在画两个按钮,其名称分别为 C1 和 C2,标题分别为“显示”和“扩大”,编写适当的事件过程。程序运行后,如果单击 C1 命令按钮,则在文本框中显示“等级考试”,如图 1所示,如果单击 C2 命令按钮,则使文本框在高、宽方向上各增加一倍,文本框中的字体大小扩大到原来的 3倍,如图 2所示。 注意: 要求程序中不得使用变量。 存盘时必须放在考生
2、文 件夹下,工程文件名为 sjt1.vbp,窗体 文件名为sjt1.frm。 图 1 图 2 解析:(大家请注意,以下分析加入我个人的理解和方法,都已通过上机验证,有的题方法不止一种,大家可以和我互相交流, 我的邮箱:hero_, QQ:313691262,也可从论坛讨论 ) 这道题没什么难度,主要考你窗体、按钮及文本框的基本属性,所以大家一定要熟练掌握常用控件的基本属性。打开 VB(不用我说了 吧 ),新建一个工程(标准的 EXE),单击控件面板的“ TextBox”控件(也可双击,直接在窗体建立),在属性面板中将“名称”修改为 T1,“ Width”修改为 1400,“ Height”修改
3、为 400。 然后单击控件面板的“ CommanButton”添加两个命令按钮,在属性面板中将“名称”分别修改为 C1 和 C2,“ Caption”分别修改为显示和扩大。 接下来双击显示按钮,进入代码编写窗口,键入:(按钮的 Click 事件) T1.text=”等级考试 ” 双击扩大按钮,键入:(按钮的 Click 事件) T1.width=T1.width+1400 T1.Height=T1.Height+400 T1.fontsize=T1.fontsize*3 最后单击保存按钮,工程命名为 sjt1.vbp,窗体命名为 sjt1.frm。 总结:这道题只要错一点就没有分,主要考大家仔
4、细认真及属性设置的熟练程度,大家一定了解 Caption、 Text 等属性在不同控件含义是不同,有的控件有这个属性,而那个控件没有,名称属性是不能在运行期间改变的等等。以上限于时间原因,不能一一举例、分析,我会在以后给出更多总结。 晨曦制作 第 2 页 共 14 页 2在名称为 Form1 的窗体 上画一个命令按钮,其名称为 C1,标题为“转换”;然后再画两个文本框,其名称分别为 Text1 和 Text2,初始内容为空白,编写适当的事件过程。程序运行后,在 Text1 中输入一行英文字符串,如果单击命令按钮,则 Text1 文本框中的字母都变为小写,而 Text2 的字符变为大写。例如,在
5、 Text1中输入 Visual Basic Programming,则单击命令按钮后,结果如图所示。 要求: 不得使用任何变量。 注意: 存盘时必须放在考生文件夹下,工程文件名为 sjt2.vbp,窗提文件名为sjt2.frm。 解 析:(大家请注意,以下分析加入我个人的理解和方法,都已通过上机验证,有的题方法不止一种,大家可以和我互相交流, 我的邮箱:hero_, QQ:313691262,也可从论坛讨论 ) 这道题主要考查控件的属性及字母大小写转换函数,新建一个工程,在窗体上添加一个 ”CommandButton”控件,将“名称”属性修改为 C1,“ Caption”属性修改为转换;再添
6、加两个“ TextBox”控件,将“名称”属性分别修改为“ Text1”和“ Text2” ,将“ Text”属性中的 内容清空。 接下来双击“转换”按钮,进入脚本编写窗口,键入:(按钮的 Click 事件) Text1.text=LCase(Text1.text) Text2.text=UCase(Text1.text) 最后保存工程为 sjt2.vbp,窗体为 sjt2.frm. 总结:大家一定要掌握 VB 中的常用函数(数学函数、字符串函数、输入输出函数等)及各种运算符。 二、 简单应用题( 2 小题,每小题 20 分,共计 40 分) 1.在考生目录下有一个工程文件 sjt3.vbp,
7、相应的窗体文件为 sjt3.frm。包含所 有控件和部分程序,如图所示。 要求: 1)利用属性窗口向列表框添加四个项目: Visual Basic,Turbo C,C+,Java; 2)请编写适当的程序完成以下功能:当选择列表框中的一项和单选按钮 Option1,然后单击“确定”命令按钮,则文本框中显示“ XXX 笔试”;当选择列表框中的一项和单选按钮 Option2,然后单击“确定”命令按钮,则文本框中的一项和单选按钮 Option2,然后单击“确定”命令按钮,则文本框中显示“ XXX 上机”。其晨曦制作 第 3 页 共 14 页 中“ XXX”是在列表框中所选择的项目。 注意: 考生不得修
8、改窗体文 件中已经存在的程序,退出程序时必须通过单击窗体右上角的关闭按钮。在结束程序运行之前,必须至少进行一次选择操作(包括列表框和单选按钮),否则不得分。最后把修改的文件按原文件名存盘。 解析:(大家请注意,以下分析加入我个人的理解和方法,都已通过上机验证,有的题方法不止一种,大家可以和我互相交流, 我的邮箱:hero_, QQ:313691262,也可从论坛讨论 ) 这道题考查大家列表框、单选按钮的属性设置 首先打开工程 sjt3.vbp,打开窗体 sjt3.frm, 选择其中的 List1 控件,在属性面板中,在“ List”属性中添加“ Visual Basic”、“ Turbo C”
9、、“ C+”、“ Java”。双击窗体的“确定”按钮并输入以下代码:(按钮的 Click 事件) If Option1.Value=True then Text1.Text=List1.List(List1.ListIndex)+Option1.Caption End If If Option2.Value=True then Text1.Text=List1.List(List1.ListIndex)+Option2.Caption End If 最后单击保存按钮。 总结:列表框( ListBox)和组合框 (ComboBox)、单选按钮 (OptionButton)和复选框 (CheckB
10、ox)这几个控件的区别(事件和属性) 。例如,同样是 Value 事件,对于单选按钮来说,可以设置为 True 和 Flase;而对于复选按钮来说,设置的值为 0,1,2。 2 在考生目录下有一个工程文件 sjt4.vbp,相应的窗体文件为 sjt4.frm。在窗体上已经有一个命令按钮。其名称为 Command1,标题为“计 算并输出”;程序运行后,如果单击命令按钮,程序将计算 500 以内两个数之间(包括开头和结尾的数)所有连续数的和为 1250 的正整数,并在窗体上显示出来,这样的数有多组,程序输出每组开头和结尾的正整数,并用“”连接起来 ,如图所示,这个程序不完整,请把它补充完整。 要求
11、: 去掉程序中的注释符,把程序中的?该为正确的内容,使其实现上述功能,但不得修改程序中的其他部分。最后把修改的文件按原文件存盘。 晨曦制作 第 4 页 共 14 页 解析:(大家请注意,以下分析加入我个人的理解和方法,都已通过上机验证,有的题方法不止一种,大家可以和我互相交流, 我 的邮箱:hero_, QQ:313691262,也可从论坛讨论 ) 这到题用到了循环语句和选择语句 题目给出的程序如下:(一共三个空) Private Sub Command1_Click() Dim i As Integer, j As Integer, iSum As Integer Print “连续和为 1
12、250 的正整数是: “ For i = 1 To 500 ? = 0 赋初值 For j = i To 500 iSum = ? 进行累加 If iSum = 1250 Then Exit For Next If iSum = ? Then 和是否为 1250 Print i; “ “; j End If Next End Sub 答案为: 1) isum 2)j+iSum 3)1250 总结:不要忘记将程序前面的去掉,否则还会认为是注释语句 掌握选择、循环语句,因为在实际问题中经常用到 三、 综合应用题( 1 小题,计 40 分) 在窗体上画一个文本框,名称为 Text1,初始内容为空白,
13、并设置多行显示格式;然后再画两个命令按钮,其名称分别为 Command1 和 Command2,标题分别为“显示”和“保存”,如图所示,编写适当的事件过程。程序运行 后,如果单击“显示”命令按钮,则读取考生 目录下的 in5.txt 文件,并在文本框中显示出来,该文件是一种用随机存取方式建立的文件,共有 5个记录,要求按记录号顺序显示全部记录,每个记录一行;如果单击“保存”命令按钮,则把所有记录保存到考生目录下的顺序文件 out5.txt 中。随机文件 in5.txt 中的每个记录包括 3 个字段,分别为姓名、性别和年龄,其名称和长度分别为: Name 字符串 8 Sex 字符串 4 Age
14、Integer 晨曦制作 第 5 页 共 14 页 其类型定义为: Private Type StudInfo Name As String*8 Sex As String*4 Age As Integer End Type 要求: 1) 文件 out5.txt 以顺序存取方式建立和保存。 2) 存盘时必须放在考生目录下,工程为 sjt5.vbp,窗体文件名为 sjt5.frm。 解析:(大家请注意,以下分析加入我个人的理解和方法,都已通过上机验证,有的题方法不止一种,大家可以和我互相交流, 我的邮箱:hero_, QQ:313691262,也可从论坛讨论 ) 这道题主要考查 顺序和随机文件的
15、读、写操作 新建一个工程,在窗体上添加“ TextBox”控件,在属性面板中,将“ Text”属性设为空,把“名称”属性设为“ Text1”,把“ Multiline”属性设为 True。然后再添加两个“ CommandButton”控件,在属性面板中将“名称”属性分别改为“ Command1”、“ Command2”,将“ Caption”属性分别设为“显示”、“保存”。在窗体上单击右键选择“查看代码”选项,在代码窗体中写下如下代码: Private Type StudInfo Name as string*8 Sex as string*4 Age as integer End Type
16、Dim pers as studinfo Dim recmum as integer 显示按钮脚本: Private sub command1_click() Open app.path+”in5.txt” for random as #1 Len=len(pers) recnum=lof(1)/len(pers) Cls For i=1 to recnum Get #1,pers 晨曦制作 第 6 页 共 14 页 Text1.text=text1.text+pers.name+pers.sex+str(pers.age)+vbcrlf Next i Close 1 End sub 保存按钮
17、脚本: Private sub command2_click() Open app.path+”out5.txt” for output as #1 Print #1,text1.text Close #1 End sub 最后,单击保存按钮,工程保存为 sjt5.vbp,窗体保存为 sjt5.frm。 全国计算机等级考试二级 VB上机题库 (第 二 套 ) 1. 基本操作( 2小题,每小题 15分,共计 30分) 注意:下面出现的 “考生文件夹 “均为 C:WEXAM00000000 * 请根据以下各小题的要求设计 Visual Basic应用程序(包括界面和代码)。 ( 1)在名称为 Fo
18、rm1,标题为 “窗体 “ 的窗体上画一个标签,其名称为 Label1,标题为 “等级考试“, BorderStyle属性为 1,且可以自动调整大小,再画一个框架,名称为 Frame1,标题为 “科目 “,如图所示。 注意: 存盘时必须存放在考生文件夹下,工程文件名为 sjt1.vbp,窗体文件名为 sjt1.frm。 * ( 2)在名称为 Form1的窗体上画两个图像框,其名称分别为 Image1和 Image2, Stretch属性分别为 True和 False,然后通过属性窗口在 Image1中装入一个图形文件 pic.jpg(位于考生文件夹下) ,编写适当的事件过程。程序运行后,如果单
19、击窗体,则可清除 Image1中的图形,并把该图形复制到 Image2中,如图所示。 晨曦制作 第 7 页 共 14 页 注意: 要求程序中不得使用变量。 存盘时必须存放在考生文件夹下,工程文件名为 sjt2.vbp,窗体文件名为 sjt2.frm。 第一题主要考查了 Frame控件属性的使用及 Label控件的使用。在 Label与 Frame控件中可通过使用 Caption属性来指定其要显示的内容,同时可通过 Font属性来设定要显示文字的字体。 第二题主要考查了 Image控件的 Stretch属性的使用方法,通过指定 Stretch可以指定图片是否被拉伸,同时也考查了 Image控件中
20、图片的清除方法,可用 Set控件名 .Picture=Nothing来清除 Image控件中的图片。 2. 简单应用( 2小题,每题 20分,计 40分) 注意:下面出现的 “考生文件夹 “均为 %USER% * ( 1)在考生文件夹下有一个工程文件 sjt3.vbp,相应的窗体文件为 sjt3.frm。 在名称为 Form1的窗体上有一个名称为 Text1的文本框和名称为 Command1、标题为“确定 “的命令按钮,一个名称为 List1的列表框和两个名称分别为 Option1和Option2、标题分别为 “添加 “和 “删除 “的单选按钮,如图 1所示。程序运行后,如果选择单选按钮 Op
21、tion1并在文本框中输入一个字符串,然后单击 “确定 “命令按钮,则把文本框中的字符串 添加到列表框中,并清除文本框,如图 2所示;如果选择列表框中的一项和单选按钮 Option2,并单击 “确定 “命令按钮,则删除列表框中所选择的项目,如图 3所示;如果不选择列表框中的项目,或者没有在文本框中输入字符串,则单击 “确定 “命令按钮后,将显示一个信息框 “未输入或未选择项目 “,如图 4所示。该程序不完整,请把它补充完整。 要求: 去掉程序中的注释符,把程序中的 ? 改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 晨曦制作 第 8 页
22、共 14 页 * ( 2)在考生文件夹下有一个工程文件 sjt4.vbp,相应的窗体文件为 sjt4.frm。在窗体上有一个命令按钮,其名称为 Command1,标题为 “计算 “。程序运行后,如果单击命令按钮,程序将根据下面的公式计算的值: /4 = 1 - 1/3 + 1/5 - 1/7 + .所提供的窗体文件已给出了命令按钮的事件过程,程序运行结果如图所示。 该程序不完整,请把它补充完整。 要求: 去掉程序中的注释符,把程序中的 ? 改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后用原来的文件名保存工程文件和窗体文件。 第一小题: 该题考查考生对 ListBox控件的使用
23、。 列表框的 AddItem方法 用来在列表框中插入一行文本,其语法为: 列表框名 .AddItem 字符串 ,索引值 如果省略 “索引值 “,则字符串被添加到列表框的尾部;使用 “索引值 “可以将字符串插入列表框中的指定位置。 “索引值 “从 0开始,到列表项总数 -1止。 列表框的 RemoveItem方法 晨曦制作 第 9 页 共 14 页 用来删除列表框中的指定项目,其语法为: 列表框名 .RemoveItem 索引值 列表框的 ListIndex属性 用来设置或返回列表框中当前选中的列表项。 第二小题: 该题考查了 Do-Loop循环结构语句和公式计算的算法实现,相关程序如下: Pr
24、ivate Sub Command1_Click() Dim Result As Double Dim Sign As Integer Dim i As Integer Result = 0 Sign = 1 i = 1 Do Result = Result + Sign / i i = i + 2 Sign = -Sign Loop While 1 / i = 0.0001 Text1.Text = Result * 4 End Sub 3. 综合应用( 1小题,计 30分) 注意:下面出现的 “考生文件夹 “均为 %USER% 在考生文件夹下有一个工程文件 sjt5.vbp,相应 的窗体文
25、件为 sjt5.frm。窗体外观如图 1所示。三个命令按钮的名称分别为 Command1、 Command2和 Command3,标题分别为 “读取数据 “、 “首字母大写 “和 “存盘 “。程序运行后,如果单击 “读取数据 “命令按钮,则读取考生文件夹下 in5.txt中的全部文本(文本中的单词与单词之间或标点符号与单词之间均用一个空格分开),并在文本框中显示出来,如图2所示; 如果单击 “首字母大写 “命令按钮,则将文本框中每个单词的第一个字母变为大写字母(如果原来已是大写字母则不改变),并在文本框中显示出来,如图 3所示;如果 单击 “存盘 “命令按钮,则把文本框中的内容(首字母大写后)
26、保存到考生文件夹下的文件 out5.txt中。窗体文件中已给出了部分程序,请把它补充完整,使其实现上述功能。 晨曦制作 第 10 页 共 14 页 要求: 1)编写 “读取数据 “命令按钮的 Click事件过程。 2)去掉 “首字母大写 “命令按钮和 “存盘 “命令按钮事件过程中的注释符,把程序中的 ?改为正确的内容,使其能正确运行。 3)用原来的文件名保存工程文件和窗体文件。 本题主要考查了文件的操作,文件中字符 串的处理方法。主要代码如下: Dim s As String Private Sub Command1_Click() Open “in5.txt“ For Input As #1 s = Input$(LOF(1), 1) Close #1 Text1.Text = s End Sub Private Sub Command2_Click() Dim oldSen As String Dim newSen As String Dim ch As String Dim lastCh As String oldSen = Text1.Text strlen = Len(oldSen) lastCh = Left(oldSen, 1) For i = 1 To strlen ch = Mid(Text1.Text, i, 1) If lastCh = “ “ Then