早教吧作业答案频道 -->数学-->
VB中Dimx%,y%,z%x=y=z=1'语法没错,但结果都为0能讲讲原理吗
题目详情
VB中Dim x%,y%,z% x=y=z=1 ' 语法没错,但结果都为 0 能讲讲原理吗
▼优质解答
答案和解析
因为变量x,y,z被使用%后缀声明为整型,所以,它们的值一定是一个数值,并且初始值都是0
x=y=z=1
相当于
x=((y=z)=1)
而括号中的是一个逻辑表达式而非赋值语句,其执行顺序应为
x=((0=0)=1)
x=(True=1)
x=(-1=1) 'True对应的数值值为-1
x=False '由于x为整形变量,所以不能直接将False负值给x,会发生隐式类型转换
x=0 'False对应的数值值为0
变量y和变量z一直没有赋过值,所以保持初始值0
所以,语句执行后三个变量的值都是0,且不会发生语法错误.
如果还有问题欢迎追问,问题解决请及时选为满意回答,
x=y=z=1
相当于
x=((y=z)=1)
而括号中的是一个逻辑表达式而非赋值语句,其执行顺序应为
x=((0=0)=1)
x=(True=1)
x=(-1=1) 'True对应的数值值为-1
x=False '由于x为整形变量,所以不能直接将False负值给x,会发生隐式类型转换
x=0 'False对应的数值值为0
变量y和变量z一直没有赋过值,所以保持初始值0
所以,语句执行后三个变量的值都是0,且不会发生语法错误.
如果还有问题欢迎追问,问题解决请及时选为满意回答,
看了VB中Dimx%,y%,z%x...的网友还看了以下:
lim(x->0)(1/x-1/e^x-1)我这种解法错在哪里?我的解法如下lim(x->0)(1 2020-05-15 …
矩阵实验室与微分方程矩阵实验室能否求解下面这个微分方程?x''+[(x+2)^2]x'-5=0x' 2020-06-14 …
解不等式(x-3)(x+4)大于0,根据乘法法则,原不等式可能化成不等式组:x-3大于0,x+4大 2020-06-27 …
导数的连续性设f(x)可导,且f(0)=0,f(x)在0点的导数不为0,求w=lim(x→0){x 2020-07-16 …
定积分换元法中,x上限为1/2,下限为0,令u=1-x.有如下两种做法:方法一0<x<1/2 2020-07-31 …
用公式法:0.3Y的平方+Y=0.8用因式分解法:(1)(X+3)的平方=2x+6(2)9(x-2 2020-08-01 …
ODEpicarditeration常微分方程,比卡迭代法picard逐步逼近法对于x'=f(t,x 2020-11-27 …
高等数学求极限,我这一步的写法为什么不对?limx->0[f(x)(1+sinx)/x]=limx- 2020-12-02 …
设f(x)=g(x)/x(x不等于0),f(x)=0(x=0),且已知g(0)=g'(0)=0,g' 2020-12-21 …
一个关于赋值法的问题f(0)=1,而且对于任意实数x,y总有f(x+y/2)=f(x)+y(2x+y 2020-12-31 …