VB题,急,7.2就考了!!

来源:百度知道 编辑:UC知道 时间:2024/06/25 04:08:51
9. 如果在窗体上画一个命令按钮C1和两个标签L1和L2,然后,编写如下事件过程:
Private Sub C1_Click()
a=0
For i=1 To 10
a=a+1 '(1)
b=0
For j=1 To 10
a=a+1 '(2)
b=b+2
Next j
Next i
L1.Caption=Str(a)
L2.Caption=Str(b)
End Sub
那末,程序运行后,单击命令按钮,标签L1和L2显示的结果分别是
告诉我过程啊~~谁是VB高手啊,小女子这厢有礼了!
Private Sub Form_Click()
Dim x, n As Integer
x=1
n=0
Do While x<28
x=x*3
n=n+1
Loop
Print x,n
End Sub
程序运行后,单击窗体,窗体上显示的结果是
还有这道。
(我需要过程,想知道是怎么做出来的。答案我有。)

110,20

第一个相当于11*10 第二个相当于2*10

110 20

为什么不在VB上面试试呢?

第一题目:20,20
第一个for 循环执行10次,a=10了。第二个for循环执行10次之后,就变成了20
而同样的道理,第二for循环执行10次之后b=10*2=20
第二题目:当x=1时,x=1*3=3,此时,x<28,n=0+1=1
当x=3时,x=3*3=9,此时,x<28,n=1+1=2
当X=9时,x=9*3=27此时,x<28,n=2+1=3
当x=27时,显然:x=27*3>28了,这时就执行,n=3+1=4
此后,就从LOOP跳出了循环。
所以:最后的结果是:x=81,n=4

for语句嵌套时,先从内部for算起。
i=1,a=1,b=0,(j=1,a=2,b=2;j=2,a=3,b=4;……)
i=2,a=11,b=0,(j=1,a=12,b=2;j=2,a=13,b=4;……)
……
i=10,a=91,b=0,(j=1,a=12,b=2;j=2,a=13,b=4;……)
如果你觉得不好理解,可以把题目代码改成如下:
Private Sub Command1_Click()
a = 0
For i = 1 To 10
a = a + 1 '(1)
b = 0
Print "i="; i, "j="; j, "a="; a, "b="; b
For j = 1 To 10
a = a + 1 '(2)
b = b + 2
Print "i="; i, "j="; j, "a="; a, "b="; b