double型变量的赋值运算的结果为什么是double?

如题所述

假定x和y都是double 型的变量,当x=2时,y=x+3/2=3.000000,因为在表达式中3/2=1,又因为y=x+3/2=x+1=3.000000。因为运算符的优先级原因和运算的类型转换等因素的影响,才导致结果为3.000000,

运算:3为整型,2为整型,所以3/2为整型。当执行y=x+3/2时,x为double,把x+1转为double型的运算,所以得出最后结果为3.000000。

扩展资料:

复合的赋值运算符

复合的赋值运算符,又称为带有运算的赋值运算符,也叫赋值缩写。

例如:i=i+j;可表示为 i+=j;这里+=是复合赋值运算符。

同样的共有10种这样的运算符,它们是:

+= 加赋值

-= 减赋值

*= 乘赋值

/= 除赋值

%= 求余赋值

&= 按位与赋值

| = 按位或赋值

^= 按位异或赋值

<<= 左移位赋值

>>= 右移位赋值

<> 当右操作数又是一个赋值表达式时,形成多重赋值表达式。

例如:

i=j=0; //结果i、j的值都为0

构成复合赋值表达式的一般形式变量 双目运算符=表达式,它等效于变量=变量 运算符 表达式。

参考资料来源:百度百科-赋值运算符

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