心脏三维立体图:VB中关于关系表达式的问题?

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/08 19:07:38
Private Sub Command1_Click()
a = 1: b = 2: c = 3
a = a + b: b = b + a: c = b + a
If a <> 3 Or b <> 3 Then
a = b = a: b = c - a: c = b + a
End If
Print a + b + c
End Sub
结果是16
答案解释中说道:“a = b = a: b = c - a: c = b + a”由于b = a是关系表达式,其值为-1,所以a,b,c分别为-1,9,8 得出最后为16
我是不明白为什么“b = a是关系表达式,其值为-1”这句话,求解!

a=b=a 等同于 a=(b=a)
括号中为关系表达式 即a=b时值为true 或a<>b时值为 false
转换成数值 即true 为-1 false为0
也就是 表达式a=b=a 即a=(b=a)
1、当b=a时a=-1
2、当b<>a时a=0
这个应该不难理解

因为关系表达式的值是boolean型的,b=a值为false,也就是-1了。