1、国家二级 VB机试(上机操作)模拟试卷 317及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)在名称为 Form1的窗体上画一个标题为“直辖市”、名称为 Frame1的框架,在框架中画个名称为Combol的组合框,其编辑域为空,有如图所示的 4个列表项,外观风格也与图中相同。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1vbp,窗体文件名为 Sjt1.frm。 (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)在考生文件夹下有一个工程文件 sjt3vbp。程序的功能是通过键盘向文本框中输人大、小写字母和
2、数字。单击标题为“统计”的命令按钮,分别统计输入字符串中大写字母、小写字母及数字字符的个数,并将统计结果分别在标签控件数组 x中显示,如图所示。 在给出的窗体文件中已经添加了全部控件,但程序不完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容。 注意:不能修改程序的其他部分和控件属性,最后将修改后的文件按原文件名进行存盘。 (分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个工程文件 sjt5vbp,含三个窗体,标题分别为“启动”、“注册”、“登录”,程序运行时显示“启动”窗体,单击窗体上按钮时弹出对应窗体进行注册或登录。 注册信息放在全局数组 us
3、ers中,注册用户数(小于或等于 10个)放在全局变量 n中(均已在标准模块中定义)。 注册时用户名不能重复,且“口令”与“验证口令”必须相同,注册成功则在“启动”窗体的标签中提示“注册成功”,否则提示相应错误信息。登录时,检验用户名和口令,若正确,则在“启动”窗体的标签上提示“登录成功”,否则提示相应错误信息。 标准模块中函数 finduser的功能是:在 users数组中搜索用户名(参数ch),找到则返回该用户名在 users中的位置,否则返回 0。 文件中已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把 Form2、Form3 窗体文件中的?改为正确的内容。 注意:不得修
4、改已经存在的程序和控件的属性;最后,程序按原文件名存盘。(分数:2.00)_国家二级 VB机试(上机操作)模拟试卷 317答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)在名称为 Form1的窗体上画一个标题为“直辖市”、名称为 Frame1的框架,在框架中画个名称为Combol的组合框,其编辑域为空,有如图所示的 4个列表项,外观风格也与图中相同。注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1vbp,窗体文件名为 Sjt1.frm。 (分数:2.00)_正确答案:(正确答案:(1) 【操作步骤】 步骤 1:新建一个窗体 For
5、m1。 步骤 2:向窗体上添加一个Frame控件,并按照表 413 设置控件的属性。 步骤 3:向 Frame控件中添加一个 ComboBox控件,按照表 414 设置控件的属性,设置完成后结果如图 411 所示。 步骤 4:调试并运行程序,关闭程序后按题目要求存盘。 (2) 【操作步骤】 步骤 1:新建一个窗体 Form1。 步骤 2:向窗体中添加一个命令按钮,按照表 415 设置控件的属性。 步骤 3:向窗体中添加一个计时器控件,按钮表 416设置控件的属性,设置完成后结果如图 412 所示。 )解析:二、简单应用题(总题数:1,分数:2.00)2.(1)在考生文件夹下有一个工程文件 sj
6、t3vbp。程序的功能是通过键盘向文本框中输人大、小写字母和数字。单击标题为“统计”的命令按钮,分别统计输入字符串中大写字母、小写字母及数字字符的个数,并将统计结果分别在标签控件数组 x中显示,如图所示。 在给出的窗体文件中已经添加了全部控件,但程序不完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容。 注意:不能修改程序的其他部分和控件属性,最后将修改后的文件按原文件名进行存盘。 (分数:2.00)_正确答案:(正确答案:(1) 【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:打开代码编辑窗口,去掉程序中的注释符“”,将问号改为正确的内容。 Private Sub Comman
7、dl_Click() Dim n As Integer Dim b As Integer Dim a(3)As Integer S=RTrim(Text1Text)将文本框中的内容取出并去掉右边空格 n=Len(Text1Text)用 Len函数确定字符串长度 For i=1 To n b=Aso(Mid(s,i,1)将取出的字符转换为 ASCII码值 Select Caseb确定 b的范围,从而得知它的类型 Case 48 To 57 a(0)=a(0)+1 Case 65 To 90 a(1)=a(1)+1 Case 97 To 122 a(2)=a(2)+1 End Select Nex
8、t For i=0 To 2 x(i)=a(i)将所得个数分别显示在标签控件数组 X中 Next End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。 (2) 【操作步骤】 步骤 1:打开本题工程文件,在 List1中添加“文本框”、“标签”、“列表框”和“单选钮”等选项。 步骤 2:打开代码编辑窗口,去掉程序中的注释符“”,将问号改为正确的内容。 Private Sub remove(La As ListBox,Lb As ListBox) For i=0 To La.ListCount 一 1 LbAddItem LaList(i) Next LaClear End Sub
9、 Private Sub Command1_Click() Call remove(List1,List2) End Sub Private Sub Command2_Click() Call remove(List2,List1) End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。)解析:三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个工程文件 sjt5vbp,含三个窗体,标题分别为“启动”、“注册”、“登录”,程序运行时显示“启动”窗体,单击窗体上按钮时弹出对应窗体进行注册或登录。 注册信息放在全局数组 users中,注册用户数(小于或等于 10个)放
10、在全局变量 n中(均已在标准模块中定义)。 注册时用户名不能重复,且“口令”与“验证口令”必须相同,注册成功则在“启动”窗体的标签中提示“注册成功”,否则提示相应错误信息。登录时,检验用户名和口令,若正确,则在“启动”窗体的标签上提示“登录成功”,否则提示相应错误信息。 标准模块中函数 finduser的功能是:在 users数组中搜索用户名(参数ch),找到则返回该用户名在 users中的位置,否则返回 0。 文件中已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把 Form2、Form3 窗体文件中的?改为正确的内容。 注意:不得修改已经存在的程序和控件的属性;最后,程序按原
11、文件名存盘。(分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:打开本题工程文件。 步骤 2:打开代码编辑窗口,去掉程序中的注释符“”,将问号改为正确的内容。 Form2 窗体代码 Private Sub Command1_Click()清空重置 Text1=” Text2=” Text3=” End Sub Sub writeusers()向数组 users中写入新用户信息 n=n+1用户数目自增 users(n,1)=Text1保存用户的用户名、密码 users(n,2)=Text2 End Sub Private Sub Command2_Click() If Text1=
12、”Then MsgBox(“必须输入用户名!”) Text1SetFocusText1重新获得焦点 ElseIf finduser(Trim$(Textl)0 Then 如找到相同名,则返回位置一定大于 0 MsgBox(”此用户名已经存在!”) ElseIf Text2Text3 Then比较口令与验证口令是否相同 MsgBox(”口令验证错误!”) Else writeusers Form1.Label1=”注册成功!” 当注册成功后 Label1显示成功信息 Form2Hide End If End Sub Form3 窗体代码 Private Sub Commandl_Click() k=finduser(Trim$(Textl) If k=0 Then验证用户名是否存在 MsgBox(”没有注册!”) ElseIf Trim$(Text2)users(k,2)Then验证输入的密码是否正确 MsgBox(”口令错误!”) Else Form1LabellCaption=”登录成功!” Form3Hide End If End Sub 步骤 3:调试并运行程序,关闭程序后按题目要求存盘。)解析: