1、VB 机试模拟试卷 28 及答案与解析 一、基本操作题( 30分) 1 1. 请根据以下各题的要求设计 Visual Basic应用程序 (包括界面和代码 )。 1在窗体 (名称为 Form1)上画两个命令按钮,其名称分别为 C1和 C2,标题分别为 “命令按钮 1”和 “命令按钮 2”,编写适当的事件过程。程序运行后, “命令按钮 2”隐藏,此时如果单击 “命令按钮 1”,则 “命令按钮 2”出现, “命令按钮 1”隐藏;而如果单击“命令按钮 2”,则 “命令按钮 1”出现, “命令按钮 2”隐藏。程序的运行情况如图 11所示。注意;存盘时,工程文件名为 sjt1.vbp窗体文件名为 sjt
2、1.frm。 2在Form1的窗体上画一个命令按钮,其名称为 C1,标题为 “显示 ”;再画一个文本框,其名称为 Text1,编写适当的事件过程。程序运行后,在窗体加载时使文本框不可见,如果双击窗体,则文本框出现;此时如果单击命令按钮,则在文本框中显示 “等级考试 ”。程序运行情况如图 12所示。二、简单应用题( 40分) 2 1. 在名称为 Form1的窗体上画一个名称为 Text1的文本框,通过属性窗口设置文本框属性,在文本框中显示 “AAAA”(如图 21所示 );再建立一个名称为 Cmd1,标题为 “清除 ”的命令按钮,编写适当的事件过程。要求程序运行后,如果单击 “清除 ”命令按钮,
3、则清除文本框中所显示的信息。注意:保存时必须存放在考生文件夹下,窗体文件名为 sjt3.frm,工程文件名为 sit3.vbp。 2在考生文件夹中有工程文件 sit4.vbp,它包含一个窗体文件 form1。在窗体上有一个列表框,名称为List1,一个文本框,名称为 Text1,和一个命令按钮,名称为 Command1,标题为“复制 ”。要求程序运行后,在列表框中自动建立四个列表项,分别为 “项目 1”、 “项目 2”、 “项目 3”、 “项目 4”。如果选择列表框中的一项,则单击 “复制 ”按钮时,可以把该项复制到文本框中 (程序运行结果如图 22)。要求:编写程序,以实现试题要求的功能。注
4、意:存盘时必须放在考生文件夹下,工程文件名为 sjt4.vbp,窗体文件名为 sjt4.frm。三、综合应用题( 30分) 3 在考生文件夹下有一个工程文件 sjt5.vbp,窗体上有两个命令按钮和一个文本框,命令按钮的名称分别为 Cmd1和 Cmd2,标题分别为 “计算 ”和 “存盘 ”,文本框为空,如图 31所示。程序的功能是在运行时,单击 “计算 ”命令按钮,系统随机产 生 20个只有两位数的正整数,将其存入到一个数组中,再将这 20个数相加的结果在文本框中显示出来。单击 “存盘 ”命令按钮,将相加的结果存入 “out5.txt”文件中。 要求:去掉程序中的注释符,把程序中的 ?改为正确
5、的内容,使其实现上述功能。注意:不能修改程序中的其他部分,也不能修改控件的其他属性。最后把修改后的程序以原文件名存盘。 sjt5.frm文件内容如下: Option Base1 Dim sum As Integer Private Sub Cmd1_ClickO Dim art(20)As Integer Dim f1 As? Randomize arr(1)=Int (Rnd * 90)+10 sum=? For i=3 To 20 Do a=Int(Rnd * 90)+10 f1=? For j=1 To i1 If arr(j)=a Then f1=True:Exit For Next
6、j Loop While f1 arr(i)=a sum=sum+arr(i) Next i Text1. Text=sum End Sub Private Sub Cmd2_Click() Call WriteData(?,sum) End Sub Sub WriteData(Filename As String,Num As Integer) Open App.Path & “& Filename For Output As #1 Print #1,Num Close #1 End Sub VB 机试模拟试卷 28 答案与解析 一、基本操作题( 30分) 1 【正确答案】 启动 Visua
7、l Basic,在窗体上画两个命令按钮。 按 F4键,激活属性窗口,在属性窗口中设置两个命令按钮的属性,见表 1。 编写两个命令按钮的 Click事件过程: Private Sub C1_Click() C1.Visible=False C2.Visible=True End Sub Private Sub C2_Click() C1.Visible=True C2.Visible=False End Sub2 对象主要属性设置如表 2所示。 分析:按试题要求在窗体上画出一个文本框和一个命令按钮,并分别将它们的属性按表 2的内容进行设置。当窗体加载时激活 Form_Load,通过文本框 Tex
8、t的 Visible属性设置为 False,即将 Text文本框隐藏掉。当双击窗体时,产生 Form_DblClick事件, Text的 Visible属性设置为 True,即可见。将字符串 “等级考试 ”赋值给文本框 Text1的 Text属性时,则在文本框中显示 “等级考试 ”。 编程代码: Private Sub C1_Click() Text1.Text “等级考试 “ End Sub Private Sub Form_DblClick ) Text1.Visible True End Sub Private Sub Form_Load() Text1.Visible False En
9、d Sub 二、简单应用题( 40分) 2 【正确答案】 对象主要属性设置如表 3所示。 分析:按试题要求在窗体上画一个文本框和一个命令按钮,并分别将它们的属性按表 3的内容进行设置。通过将一个空字符串 (即 “)赋值给文本框的 Text属性即可清除 Text文本框的内容。 编程代 码: Private Sub Cmd1_C1ick() Text1. Text “ End sub2 窗体 Load事件过程的程序如下: Private Sub Form_Load() List1.AddItem“项目 1“ List1.AddItem“项目2“ List1.AddItem“项目 3“ List1.
10、Addltem“项目 4“ End Sub 命令按钮 Click事件的程序如下: Private Sub Command1_Cllek() For i 0 To List1.ListCount1 If List1. Selected(i) True Then Text1. Text List1. List (i) End If Next i End Sub 三、综合应用题( 30分) 3 【正确答案】 对象主要属性设置如表 5所示。 分析:窗体上有两个命令按钮和一个文本框,它们的属性按表 5的内容进行设置。 f1为逻辑变量,在程序中起到一个开关作用,其初值为 False。变量 sum为整型窗体
11、变量,用它存放各数组值之和,其初值为第一个产生的随机数。 WriteData过程有两个参数,其中第一个参 数的作用是传递文件名。在该程序中,从第二个随机数开始,海产生一个随机数,都要与数组中原有的数据进行比较,若有重复,重新产生一个,直到与每一个数据都不重复为止。 编程代码: Option Base 1 Dim sum As Integer Private Sub Cmd1_Click() Dim arr(20)As Integer Dim f1 As Boolean Randomize art(1)=Int (Rnd * 90)+10 sum=arr (1) For i=2 To 20 Do
12、 a=Int(Rnd * 90) +10 f1=False For j=1 To i1 If arr(j)=a Then f1=True: Exit For Next j Loop While f1 arr(i)=a sum=sum+arr(i) Next i Text1.Text=sum End Sub Private Sub Cmd2_Click() Call WriteData (“ Out5. txt “,sum) End Sub Sub WriteData (Filename As String, Num As Integer) Open App. Path & “ & Filename For Output As #1 Print #1,Num Close #1 End Sub