Dim a(1 To 10) As Integer For i = 1 To 10 Step 2 a(i) = 12 - i Next i Print a(i - 1)

为什么运行结果是0 ?

因为你I的step是2啊,这样一次数过1,3,5,7,9最够跳出到11,因为10被跳过了 实际上a(10)就没被赋值,所以a(10)就是0咯追问

dim a as integer print a=1,a 为什么运行结果是false和0 ?

追答

在你dim了a之后,未赋值之前a初始值为0,然后的print a=1语句,在这里打印的同时不可以赋值的,所以这个语句在这里a=1是表达式不是赋值语句,表达式a=1进行比较(即0=1)的结果当然为false,然后打印出来的当然是false了
如果你想给a赋值再打印应该这样:
dim a as integer
a=1
print a

追问

dim x as integer if x then print x else print x+1 为什么运行结果是1?

追答

一样的道理。在定义了X之后,X默认为0.接下来你要知道If 条件 then判断语句,这个条件只能是TRUE 或者FALSE,如果不是TRUE或者FALSE,那么将转换为逻辑值再判断。刚才说了X=0,那么强制转换为逻辑值后为FALSE,所以执行X+1语句,结果即为1

温馨提示:答案为网友推荐,仅供参考
相似回答