设窗体上有2个文本框Text1和Text2,并有下面的事件过程: Dim n Private Sub Text1_KeyPress(KeyAscii As Integer)   If "A"

admin2015-08-28  18

问题 设窗体上有2个文本框Text1和Text2,并有下面的事件过程:
Dim n
Private Sub Text1_KeyPress(KeyAscii As Integer)
  If "A"<=Chr(KeyAscii)And Chr(KeyAscii)<="Z" Then
    n=n+1
  End If
  If KeyAscii=13 Then
    Text2.Text=n
  End If
End Sub
程序运行时,在文本框Text1中输入"Visual Basic 6.0"并按回车键后,在文本框Text2中显示的是(  )。

选项 A、4 0 1 0 3 0 0 4 0
B、0 3 3 5 1 3 5 1 2
C、9 -5 3 -5 7 -2 -4 7-2
D、9 3 3 5 7 3 5 7 2

答案B

解析 数组默认下标为0,因此数组a中的元素a(0)=12,a(1)=3,a(2)=8,a(3)=5,a(4)=10,a(5)=3,a(6)=5,a(7)=9,a(8)=2,a(9)=4。
k=1时,fun(a(k-1),a(k))即fun(a(0),a(1)),即fun(12,3),过程中x=x-y=12-3=9-3=6-3=3-3=0,函数返回0;
k=2时,fun(a(k-1),a(k))即fun(a(1),a(2)),即fun(3,8),x>=y不成立,函数直接返回3;
k=3时,fun(a(k-1),a(k))即fun(a(2),a(3)),即fun(8,5),过程中x=x-y=8-5=3,函数返回3;
k=4时,fun(a(k-1),a(k))即fun(a(3),a(4)),即fun(5,10),x>=y不成立,函数直接返回5;
k=5时,fun(a(k-1),a(k))即fun(a(4),a(5)),即fun(10,3),过程中x=x-y=10-3=7-3=4-3=1,函数返回1;
k=6时,fun(a(k-1),a(k))即fun(a(5),a(6)),即fun(3,5),x>=y不成立,函数直接返回3;
k=7时,fun(a(k-1),a(k))即fun(a(6),a(7)),即fun(5,9),x>=y不成立,函数直接返回5;
k=8时,fun(a(k-1),a(k))即fun(a(7),a(8)),即fun(9,2),过程中x=x-y=9-2=7-2=5-2=3-2=1,函数返回1;
k=9时,fun(a(k-1),a(k))即fun(a(8),a(9)),即fun(2,4),x>=y不成立,函数直接返回2;
因此程序输出0 3 3 5 1 3 5 1 2 。
转载请注明原文地址:https://kaotiyun.com/show/W2Lp777K
0

最新回复(0)