VB简单的题目

来源:百度知道 编辑:UC知道 时间:2024/05/29 20:35:51
Private Sub Form_Click()
a = 0
For k = 1 To 100
a = k + 1
Next k
Print a
End Sub
和Private Sub Form_Click()
a = 0
For k = 1 To 100
a = k + a
Next k
Print a
End Sub
今天把a = k + a写成了a = k + 1绕了好大一圈才找到问题~~
为什么 a = k + a 就循环,而a = k + 1就不循环呢?
为是, 结果不同啊,地一个结果是5050,地2个结果是101啊~~

For k = 1 To 100
a = k + a
Next k
a=k+a a=k+1
k=1 a=1+0=1 a=1+1=2
k=2 a=2+1=3 a=2+1=3
k=3 a=3+3=6 a=3+1=4
k=4 a=4+6=10 a=4+1=5
k=5 a=5+10=15 a=5+1=6
a=k+a与以前的a值有关,而a=k+1只与k值有关,最后k=100时,a=k+1=101。
而a=k+a则相当于a=1+2+3+4+……+100=5050。

都循环,a=k+a是A的累加,a=k+1是K的累加然后把值赋给a

k+a是变量累加,k+1只是每次都加1

一个是输出2到101
一个是输出1到100
都循环,怎么会不循环呢!?

建议你学习一下调试工具,单步执行一下,你会发现程序是不是按照你预期的方式运行的,监视工具监视各个变量的值,等等