某人在窗体上画了一个名称为Timer1的计时器和一个名称为Label1的标签,计时器的属性设置为Enabled=True,Interval=0,并编程下列。希望在程序运行时,可以每2秒在标签上显示一次系统当前时间。 Private Sub Timer1_Timer( ) Label1.Caption=Time$ End Sub 在程序执行时发现未能实现以上目的,那么,他应做的修改是( )。
为达到把a、b中的值交换后输出的目的,某人编程下列: Private Sub Command1_Click( ) a%=10:b%=20 Call swap(a,b):Print a,b End Sub Private Sub swap(ByVal a As Integer,ByVal b As Integer) c=a:a=b:b=c End Sub 在运行时发现输出结果错了,需要修改。下面列出的错误原因和修改方案中正确的是( )。
查看答案
C. 过程的形式参数有错,应改为swap(ByRef a As Integer,ByRef b As Integer)
下列程序的输出结果是( )。 Private Sub Command1_Click( ) ch$="ABCDEF" proc ch∶Print ch End Sub Private Sub proc(ch As String) s=“ “ For k=Len(ch) To 1 Step -1 s=s&Mid(ch,k,1) Next k ch=s End Sub
某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码下列: Function MaxValue(a( )As Integer)As Integer Dim max%∶max=1 For k=2 To 10 If a(k)>a(max)Then max=k End If Next k MaxValue=max End Function 程序运行时,发现函数过程的返回值是错的,需要修改,下列的修改方案中正确的是( )。
在窗体上画一个名称为Command1的命令按钮,然后编写下列事件过程: Private Sub Command1_Click( ) Dim n%,b,t t=1:b=1:n=2 Do b=b*n∶t=t+b∶n=n+1 Loop Until n>9 Print t End Sub 此程序计算并输出一个表达式的值,该表达式是( )。
有一个名称为Fom1的窗体,上面没有控件,设有下列程序(其中方法PSet(X,Y)的功能是在坐标X、Y处画一个点): Dim cmdmave As Boolean Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y AsSingle) cmdmave =True End Sub Private Sub Form MouseMove(Button As Integer,Shift As Integer,X As Single,Y AsSingle) If cmdmave Then Form1.PSet(X,Y) End If End Sub Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Singgle) cmdmave=False End Sub 此程序的功能是( )。
某人设计了下列函数fun,功能是返回参数a中数值的位数 Function fun(a As Integer)As Integer Dim n% n=1 While a\10>=0 n=n+1∶a=a\10 Wend fun=n End Function 在调用该函数时发现返回的结果不正确,函数需要修改,下列修改方案中正确的是( )。
A. Private Sub Check1_Click(Index As Integer) Text1.Text=“ “ For k=0 To 3 If Check1(k).Value=1 Then Text1.Text=Text1.Text & Check1(k).Caption & “ “ '双引号中是空格 End If Next k End Sub
窗体上有一个组合框,其中已输入了若干个项目。程序运行时,单击其中一项,即可把该项与最上面的一项交换。如单击图1中的“重庆”,则与“北京”交换,得到图 2的结果。以下是可实现此功能的程序,请填空。 Private Sub Combo1_Click( ) Dim temp temp=Combo1.Text __ =Combo1.List(0) Combo1.List(0)=temp End Sub
设窗体有上一个名称为HScrol1的水平滚动条,要求当滚动块移动位置后,能够在窗体上输出移动的距离(即新位置与原位置的刻度值之差,向右移动为正数,向左移动为负数)。以下是可实现此功能的程序,请填空。 Dim __ As Integer Private Sub From_Load( ) pos=HScrol1.Value End Sub Private Sub HScroll1_Change( ) Print __ -pos pos=HScroll1.Value End Sub
设窗体上有一个名称为CD1的通用对话框、一个名称为Text1 的文本框和一个名称为Command1的命令按钮。程序执行时,单击Command1按钮,则显示打开文件对话框,操作者从中选择一个文本文件,并单击对话框中的“打开”按钮后,则可打开该文本文件,并读入一行文本,显示在Text1中。以下是实现此功能的事件过程,请填空。 Private Sub Command1_Click( ) CD1.Filtetr="文本文件|*.txt|Word文档|*.doc" CD1.FilterIndex=1∶CD1.ShowOpen If CD1.FileName<>“ “ Then Open __ For Input As #1 Line Input #1,ch$ Close #1∶Text1.Text= __ End If End Sub
下列程序执行时,可以从键盘输入一个正整数,然后把该数的每位数字按逆序输出。如输入7685,则输出5 8 6 7;输入1000,则输出0 0 0 1。请填空。 Private Sub Command1_Click( ) Dim x As Integer x=InputBox("请输入一个正整数") While x> __ Print x Mod 10; x=x\10 Wend Print __ End Sub
有如图所示的窗体。程序执行时先在Text1文本框中输入编号,当焦点试图离开Text1时,程序检查编号的合法性,若编号合法,则焦点可以离开Text1文本框;否则,显示相应错误信息,并自动选中错误的字符,且焦点不能离开Text1文本框,如图所示。 合法编号的组成是:前2个字符是大写英文字母,第3个字符是“_”,后面是数字字符(至少1个)。以下程序可实现此功能,请填空。 Private Sub Text1_LostFocus( ) Dim k%,n% n=Len(__ ) For k=1 To IIf(n>3,n,4) c=Mid(Text1.Text,k,1) Select Case k Case 1,2 If c<"A" Or c>"Z" Then MsgBox("第"& k &"个字符必须是大写字母!") SetPosition k∶Exit For End If Case 3 If c<>"_"Then MsgBox("第"& k &"个字符必须是字符” “_” “) SetPosition k∶Exit For End If Case Else If c<"0" Or c>"9" Then MsgBox("第"& k &"个字符必须是数字!") SetPosition k∶Exit For End If End Select Next k End Sub Private Sub SetPosition(pos As Integer) Text1.SelStart=Pos-1 Text1.SelLength= __ Text1. __ End Sub