早教吧作业答案频道 -->数学-->
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...的网友还看了以下:
x/(y+z+u)=y/(z+u+x)=z/(u+y+x)=u(x+y+z)求(x+y)/(z+u 2020-05-21 …
已知x/y+z+u=y/z+u+x=z/u+x+y=u/x+y+z,求(y+x/z+u)+(y+z 2020-06-12 …
三元一次方程组a*x+b*y+c*z+d=0,e*x+f*y+g*z+h=0,i*x+j*y+k* 2020-08-03 …
求详细说明以下式子4x²/(x-y)(x-z)+4y²/(y-z)(y-x)+4z²/(z-x)( 2020-08-03 …
一道初二数学题,急!设a=x/y+z,b=y/x+z,c=z/x+y,且x+y+z不等于0.求代数式 2020-10-31 …
已知(2x-y-4)²+√(根号)x+3y+5=0,则x=y=2.已知有理数x、y、z满足x+y/3 2020-10-31 …
xy-yz+zx-xz+yx+zy-2xyz因式分解后的结果是()A.(y-z)(x+y)(x-z) 2020-11-01 …
已知x<0,y>0,z<0,且|z|>|y|>|x|,试比较x,y,z,x+y,x已知x<0,y>0 2020-11-01 …
1.已知1=xy/(x+y),2=yz/(y+z),3=zx/(z+x),则x+y+z=?2..当x 2020-11-01 …
已知:x^2/z+y+v^2/x+z+z^2/x+y=0,求x/z+y+y/x+z+z/x+y的值以 2020-12-31 …