题目
阅读以下应用说明以及Visual Basic程序代码,将应填入(n)。
【应用说明】
某电视台拟开发应用程序来显示戏曲大赛中1~4号四位选手决赛的现场投票情况。该程序从现场观众中(不超过2000人)每0.5秒收集一次对这四位选手的支持票数,并在屏幕上动态显示这四位选手的票柱(以高度反映票数)与累计得票数,如图2-3所示。投票过程限时30秒,每名观众最多为1名选手投票。投票结束后系统通过比较各位选手的累计得票数,显示决赛结果:“*号胜出”(如有单个冠军)或“继续进行PK”(如有多人获得相同的最高票数)。
在开发该程序的过程中创建的主要控件及其初始属性值说明如下:
该程序中设置公共变量T动态记录投票时间。四个形状ShpM(1 to 4)动态增长的底线固定。
【Visual Basic程序代码】
Dim T As Integer '声明全局变量
Private Sub Form_Load()
For i=1 To 4
ShpM(i).Top=2000 : ShpM(i).Height=0 '初始票柱高度为0
TxtM(i).Text=0
Next i
Timl.Enabled=False : Timl.Interval=500 : T=0
End Sub
Private Sub CmdStart Click()
Timl.Enabled=True '开始投票
CmdStart.Enabled=False
End Sub
Private Sub Timl Timer()
Dim n(1 To 4) As Integer 'n(1 to 4)为每次收集的票数
Dim i As Integer,j As Integer
Dim G As Integer 'G用于计算最高票数
Dim ng As Integer 'ng用于计算冠军个数
For i=1 To 4
n(i)=... '收集i号选手的票数,此处省略
TxtM(i).Text=TxtM(i).Text+n(i) '累计票(VB能进行自动转换)
ShpM(i).Top=ShpM(i).Top-n(i)
ShpM(i).Height=ShpM(i).Height+(1) '算出票柱高度
Next i
T=T+1 '计时
If T=60 Then '投票时间到
(2) '停止数据收集处理
ng = 1
G=TxtM(1).Text
For i=2 To 4
If G<TxtM(i).Text Then
G=TxtM(i).Text
ng=(3)
j = i
Else
If G=TxtM(i).Text Then ng=(4) '计算冠军个数
End If
Next i
If ng=1 Then
txtResult. Text=(5) '单个冠军结果
Else
txtResult. Text="继续进行PK"
End If
End If
End Sub
第1题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。
【应用说明5.1】
本应用程序的窗体中有一个下拉式列表框(名称为Combo1)和两个文本框(名称分别为 Txt1和Txt2)。运行时,用户从Combo1的列表中进行选择,程序就会将选中条目的内容以及编号(从0开始)分别在文本框Txt1和Txt2中显示出来。
【程序代码5.1】
Private Sub Combo1_Click()
Txt1.Text = Combo1. (1)
Txt2.Text = Combo1. (2)
End Sub
(注:可供(2)处选择的选项:List, Index, Listlndex, ListCount, Number)
【应用说明5.2】
本应用程序的运行窗口如图2所示。
开发该应用的部分程序代码如下:
【程序代码5.2】
Private Sub CmbOp_Click()
Dim Dataln As Double,DataOut as Double
Dataln=(3)
Select Case (4)
Case "取整数部分"
DataOut =Int(Dataln)
Case "求平方根"
If Dataln<0 Then
MagBox "负数不能开平方!"
Else
DataOut = Sqr(Dataln)
End If
Case "取绝对值"
DataOut = Abs(Dataln)
(5)
TxtOut. Text = str $ (DataOut)
End Sub
第2题
阅读以下应用说明以及用Visual Basic开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。
【应用说明】
某应用的登录界面如下:
登录界面中的文本框txtUserID和txtPassword分别用于接受用户输入的用户名和口令,命令按钮为“确定(cmdOk)”和“取消(cmdCancel)”。ADO数据控件Adodc1与数据库EmployeeData连接。在EmployeeData中,表“Users”的字段“UserID”和“Pswd”分别记录了所有的合法用户名和口令。
在登录界面中,输入正确的用户名和口令并单击“确定”按钮后,就会打开应用程序的主窗口fxmApp。用户名或密码输入错误时,给出提示信息并返回登录界面。
【Visual Basic程序代码】
Private Sub cmdOK Click()
Adodcl.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=D:\data\EmployeeData.mdb;Persist Security Info=False"
Adodcl.RecordSource = "select *(1)"
Adodcl.Refresh
Do
usrname =(2)
pwd = Adodc1.Recordset("Pswd")
Adodc1.Recordset.MoveNext
Loop Until (usrname =(3)) Or (Adodc1.Recordset.EOF)
If usrname <> txtUserID.Text Then
MsgBox "无效的用户ID, 请重新输入!", , "提示信息"
Else
If (4)Then
MsgBox "欢迎进入系统主界面!", , "提示信息"
Unload me
(5)
Else
MsgBox "无效的用户密码, 请重新输入!", , "提示信息"
End If
End If
End Sub
第3题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。
【说明】
本应用程序是一个乘法计算器,其运行窗口如图2所示。
在该界面中,“被乘数”、“乘数”以及“积”等文字为标签,相应的3个输入输出数据框为文本框,此外还有3个命令按钮。用户在“被乘数”和“乘数”相应的文本框内输入数据,再单击“运算”按钮,便能在“积”对应的文本框中看到相乘的结果;当用户单击“清除”按钮时,就会清除各文本框中的数据;当用户单击“关闭”按钮时就会关闭该窗口并退出应用程序。用户不能在“积”对应的文本框中输入数据。
【属性设置】
各个对象、有关的属性名以及需要修改的属性值设计如下:
【程序】
Private Sub cmdMultiply_Click()
txt3. Text =Trim(Str$ ((3)) '加法运算获得和数
End Sub
Private Sub (4) (
txt1. Text=" " '空字符串赋值给文本框txt1的内容
txt2. Text=" " '空字符串赋值给文本框txt2的内容
txt3. Text=" " '空字符串赋值给文本框txt3的内容
End Sub
Private Sub cmdClose_Click()
(5) '退出应用程序
End Sub
第4题
阅读以下应用说明以及用Visual Basic开发过程中所编写的程序代码。
[应用说明]
某应用程序在运行过程中的一个界面如下图所示:
在“供选课程”列表框(名为Listl)中选择某个课程后,再单击“,”按钮(名称为cmdSelect),就能将该课程复制到“所选课程”列表框(名称为List2)中(但要注意不要出现重复项):如果单击“>>”按钮(名称为cmdSelAll),就能将全部供选课程名复制到列表框List2中(注意应先删除List2中的已选项);如果在“所选课程”列表框中选中某个课程,再单击“<”按钮(名称为emdDelete),就会从List2中删除该课程(未选课程时应不做处理);如果单击“<<”按钮(名称为cmdDelAll),就会从List2中删除所有已选课程。
[Vsual Basic 程序代码]
Private Sub CmdSelect_Cliek()
For i = O To List2.ListCount - 1
If Listl.Text = List2.List(i) Then Exit Sub '不要重复选择
Next i
List2.Addltem (1) '在List2中增添List1中所选的项
End Sub
Private Sub CrndSelAll_Click()
List2.Clear '先删除List2中的已有项
For i = 0 To (2) '对List1中所有各项做循环处理
List2.Addltem (3) '将该项增添到 List2中
Next i
End Sub
Private Sub CmdDelete_Cliek()
If List2.Listlndex >= O Then '如果List2中有选中的项,
List2.Removeltem (4) '则删除所选的项
End If
End Sub
Private Sub CmdDelAll_Cliek()
(5)
End Sub
第5题
阅读以下应用说明以及用Visual Basic开发过程中进行的属性设置和所编写的程序代码,将应填入(n)处。
[应用说明]
启动某应用程序运行的登录窗口如下:
其中的标签(Label1)“用户名(U)”对应文本框Username,标签(Label2)“密 码(P)”对应文本框Password。当用户在Username文本框中输入用户名“ali88”,在Password文本框中输入“zmkm”(显示的字符均为“*”),并单击“确定”按钮时,就会弹出应用程序的主窗口frmAPP,而该登录窗口就会卸载。
如果用户名或密码输入错误,则会弹出报警信息框。当用户单击其中的“确定”按钮后,登录窗口中Password文本框的内容就会消失,光标停留在该框内,以便用户重新输入密码,必要时用户还可以再修改用户名,再次做登录尝试。本应用程序允许发生3次输入错误。在第3次输入错误后,就会立即退出该应用程序。
在弹出登录窗口后,当按组合键“Alt+U”时光标就会停留在Username文本框中:当按组合键“Alt+P”时光标就会停留在Password文本框中。当用户按Enter键时,就相当于单击“确定”按钮:当用户按Esc键时,就相当于单击“取消”按钮,立即退出该应用程序。
[属性设置]
在开发过程中,部分控件及属性设置如下:
[程序代码]
Private Sub cmdOK_Click()
(3) As Integer ' 静态变量times的说明
If (4) Then
Unload Me ' 卸载本登录窗口
(5) ' 弹出应用程序主窗口frmAPP
Else
MsgBox ("用户名或密码错! ")
times=times+1
Password.Text="" ' 清除密码框中的内容
Password.SetFocus ' 将光标定位于密码框
If times=3 Then End
End If
End Sub
Private Sub cmdCanee1_Click()
End
End Sub
第6题
●试题六
阅读以下应用说明及Visual Basic部分程序代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
单击窗体上的"测试"(cmdTest)按钮,出现一个输入框,要求输入一串字符,将该字符串中的非字母字符删除后,显示在窗体中的一个文本框(txtShow)中。
【程序代码】
Private Sub cmdTest_Click()
Dim strT1,strT2 As String
Dim strCh As (1)
Dim intL As Integer
Dim intI As Integer
strT1= (2) ("请输入一串字符","字符串输入")
intL= (3)
strT2=″″
For intI=l To intL
strCh=Mid(strT1,intI,1)
If(strCh>"A"And (4) ) Or (strCh>"a" And suCh<"z")Then
strT2=strT2+strCh
End If
Next intI
txtShow.Text= (5)
End sub
第7题
●试题五
阅读以下应用说明、属性设置及Visual Basic程序代码,将应填入(n)处在字句写在答题纸的对应栏内。
【说明】
本应用程序的运行窗口如图2所示。
只要用户单击"闪烁"按钮,文字"欢迎光临"就会以0.3秒消失、0.3秒显示反复进行闪烁;单击"停止"按钮时,闪烁停止,恢复图示的初态。
在开发过程中,需要设置的属性如表1所示。
在开发过程中,需要编写的程序代码如下:
【程序】
Private Sub CmdF_Click()
Timer1. (3) =True
Labe1.Visible=False
End Sub
Private Sub Timer1_Timer()
(4) =not Label.Visible
End Sub
Private Sub CmdT_Click()
Timer1.Enabled= (5)
Labe1.Visible=true
End Sub
第8题
阅读以下应用说明以及用Visual Basic语言编写的程序代码,将应填入(n)处的字句写在答题纸的对应栏内。
【应用4.1】
设应用程序的运行窗口内有一个文字标签(Label)以及一个框架,其中有三个复选框(chk1,chk2,chk3),各个复选框单击事件过程的程序代码如下:
Private Sub chkl_Click()
Label.fontBold=chkl.Value
End Sub
Private Sub chk2_Click()
Label.fontltalic=chk2.Value
End Sub
Private Sub chk3_Click()
Label.fontUnderLine=chk3.Value
End Sub
三个复选框chkl、chk2、chk3的功能分别是:(1)。
【应用4.2】
设应用程序的运行窗口内有两个文本框Txt1和Txt2,其初始内容为空。在Txt1文本框中输入一个数值,当光标离开此文本框(例如进入文本框Txt2)时,执行的程序代码如下:
Private Sub Txt1_LostFocus()
dim x aS double
x=Val(Txtl.Text)
工f x<0 Or x>100 Then
Txtl.Text =""
MsgBox$("请重新输入!")
Txtl.SetFocus
Else
Txt2.Text=Txt1.Text
End If
End Sub
该程序代码的功能是:若在文本框Txtl中输入的数值小于0或大于100,当光标离开此文本框时,(2);否则,将其值复制到文本框Txt2中。
【应用4.3】
在下面的应用中,当窗口内发生C1ick事件时,窗口内将显示如图2-4所示的杨辉三角(每一行都是二项式展开的系数)。请完善程序代码。
Private Sub Form. Click()
Dim i,j,c As Integer,StrTemp AS String
Dim a(9)As Integer
a(0)=0=a(1)=l:StrTemp=Str(a(1))+Space(3)
CurrentX=(ScaleWidth-TextWidth(StrTemp))/2
Print StrTemp
For j=2 TO 9
a(j)=1
For C=j-1 TO 2 Step-1
a(c) =(3)
Next
(4)=""
For c = 1 To j
StrTemp = StrTemp & Str((5)) & Space(5 - Len(Str(a(c))))
Next
CurrentX = (ScaleWidth - TextWidth(StrTemp)) / 2
Print StrTemp
Next End Sub
第9题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。
【说明】
已知窗体上有两个名为cmdGene和cmdSort的命令按钮。单击cmdCene按钮时,随机产生10个[1,100]范围内的整数并将它们放在数组intA中;单击cmdSort按钮时,用选择法排序这10个数并输出。
【程序代码】
Dim intA(1 To 10)As integer
Private Sub cmdGene_Click()
Dim intl As Integer
Randomize
For intl = 1 To 10
intA(intl) =(1)
Next intl
End Sub
Private Sub cmdSort_Click()
Dim intl, intJ,intMin, intTemp As Integer
For intl = 1 To 9
intMin = intA(intl)
For intJ=(2) To 10
If intA(intJ) < intMin Then
Temp = intA(intJ)
intA(intJ)=(3)
intMin = intTemp
End If
Next intJ
(4)
(5)
For intl = 1 To 10
Print Str(intA(intl))+" ";
Next intl
Next lntl
End Sub
第10题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。
【说明8.1】
以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。
【程序代码8.1】
Private Sub Command1_Click()
For i=1 To 20
x=Int((1)*200+100)
If (2)=0 Then
Print x
S=S+ (3)
End If
Next i
Print"Sum=";S
End Sub
【说明8.2】
程序8.2运行后,单击窗体,则在窗体上显示的内容是:a=(4)和b=(5)。
【程序代码8.2】
Private Sub Form_Click()
Dim a As Integer,b As Integer
a=20:b=50
p1 a,b
p2 a,b
p3 a,b
Print"a=";a,"b=";b
End Sub
Sub p1(x As Integer, ByValy As Integer)
x=x+l0
y=y+20
End Sub
Sub p2(ByVal×As Integer, y As Integer)
x=x+l0
y=y+20
End Sub
Sub p3(ByVal×As Integer, ByVal y As Integer)
x=x+10
y=y+20
End Sub
为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!