注册 登录
编程论坛 VB6论坛

这段代码是什么意思?

dgg实在 发布于 2016-10-02 18:36, 2985 次点击
Private Sub Command1_Click()
   Static x As Integer
   If x Then x = x + 10 Else x = x + 1
   Print x
End Sub
9 回复
#2
chen35232016-10-02 19:15
觉得代码不完整。
If x Then     '这里的判断语句不完整
   x = x + 10
Else
  x = x + 1
end if
#3
dgg实在2016-10-02 19:20
回复 2楼 chen3523
代码就是这样,没错的,我是复制题目
#4
dgg实在2016-10-02 19:20
回复 2楼 chen3523
代码就是这样,没错的,我是复制题目
#5
chen35232016-10-02 20:34
不错就会有结果,你运行的结果是什么?
我的理解是:
如果X满足条件,则
X=X+10
否则
X=X+1
然后结束

假设修改成
If x>50 Then     
   x = x + 10
Else
  x = x + 1
end if
当你赋值X≤50的整数时,它输出的值就是你输入的值再加1,反之加10。上述是我常用的书写方法,至少是判断语句应增加判断条件,并要求有结束判断语句。

[此贴子已经被作者于2016-10-2 20:51编辑过]

#6
xiangyue05102016-10-03 12:12
你这个对一个整型直接判断操作,涉及到不同变量类型的转换。
这段代码当x=0(当然不赋值也一样)为假的时候,也就是执行else。其他的时候都是if x then 为真。
这样的代码只是示例,实际编程中不建议这样使用,容易出问题。其实这个并不复杂,完全可以自己运行一下试试的。
#7
tyc1892016-10-04 15:26
If x Then x = x + 10 Else x = x + 1
此句的意思是,如果X有值那么X=X+10,如果X无值那么X=X+1,
#8
李品勇2016-10-09 18:57
x是静态变量,不会在过程执行完后消失
#9
pengzhanggui2016-10-10 08:41
If x Then

意思是,要么X=0的情况,要么X!=0的情况
#10
csl5912017-04-17 16:55
我试过了,可以运行,结果是x=0时,输出为1。不为0时,输出为x+10
1