一个计算机二级VB试题

来源:百度知道 编辑:UC知道 时间:2024/07/06 14:39:11
dim a,b,c as integer
a=6:b=6.5
a=b=c
print a

输出a=?
说明原因 ,答案是-1,知道的详细说明下

a=false
变量声明时未指定a,b的变量类型,即a,b都是可变型变量
经过第二行以后,a=6,b=6.5, c=0
a=b=c可以变形为a=(b=c)
b=c是一个逻辑表达式,它不成立,因此为假,所以a=False=0
你的结果不知从何而来?
如果将第二行改成 b=6,c=6.5 那么你的结果就是正确的。
因为将一个浮点数放入整形变量中,小数部分会被截去,这样b=c就成立了,
这时a=True=-1

c为默认的0
a=b=c按右结合性,先计算b=c,为False
False赋给a
print a为False

VB中0表示为假非0为真的,这个说法不成立哦

c为默认的0
a=b=c按右结合性,先计算b=c,为False
False赋给a
print a为False

我来逐句解释下
dim a,b,c as integer
‘定义了a,b两个变量为变体变量Variant,定义c为整数型变量
a=6:b=6.5
‘为变量a赋值6,为变量b赋值6.5
a=b=c
‘为变量a赋值b=c的结果(一个布尔值),由于b<>c,所以等于是为a赋值False
print a
‘所以最后a=False
好久没接触VB了,不知说清楚了没
--------------------------------------------
false也就是0 ,等于-1的话就搞不懂了

程序按右结合运算,c值为0,b=c按算术运算,值为假,再赋值给a。
vb真用1表示,假用-1表示。

貌似VB 不支持a=b=c 这样算的吧 - -!