css表格居中:VB代码的问题

来源:百度文库 编辑:高考问答 时间:2024/04/28 08:07:36
Dim x, y, z As Integer
x = 1
y = 2
z = y = x
MsgBox z

a) 1
b) 2
c) -1
d) 0

我认为得1,可计算机输出的是0,为啥?

编写程式,要特别注意程式的可读性,因为如果代码多的话,你想回头进行维护时,你会想抓狂的.
在VB中,z = y = x 因为=号可以赋值,也可以判断,这就产生了歧义,这在编写各式时应该尽量避免的.
在一条程式中,同级的逻辑符号,一般是从右往左算的,也就是先比较y=x,再把结果赋给z.
还有就是你的定义Dim x, y, z As Integer 在VB中不是这样用的.你这样定义是把z定义为整形,把x,y定义为变量了.应该是下面的:
Dim x As Integer, y As Integer, z As Integer

如果你的z=y=x想作为赋值语句,那就得把它拆开来写
Private Sub Command1_Click()
Dim x As Integer, y As Integer, z As Integer
x = 1
y = 2
y = x
z = y
MsgBox z
End Sub

这个结果是我猜的.说错了,不要见笑啊!

因为y=x的结果为逻辑值,所以Z变量的值为F,是不是msgbox函数把F值强制输入出为0了!
期待楼下的高手了!

z=y=x意为将y=x判断,然后将结果赋给z,明显y=x判断结果为False
你的Z被定义为int,将False赋给int变量,所以结果为0