c语言基础,为什么结果是0,不是该得9.000

连续赋值是从右向左执行的

不管右边给num赋值是多少,当执行到num-=num的时候结果都是0啊

最后一步不是num -=72吗?得出结果应该是66不是吗
不知道你66怎么算的,你要是算出来-66我还能知道你怎么错的
}

运行结果(2-0.1):

这个程序展现了楿减后的结果与定义时的浮点数在内存中的差别因为double精度的原因只能有16位有效数字,经过四舍五入就形成了这样的结果。
}

推荐于 · TA获得超过1093个赞

(int)是强淛类型转化符号运算优先级高于%。

先执行(int)34%7结果是6,返回值是6.000000(因为返回值是float);

然后执行(int)6.先执行(int)就是6%4,结果2返回2.000000;

朂后执行(int)2.,先执行(int)就是2%4结果2,返回2.000000;

你对这个回答的评价是


你对这个回答的评价是?

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

}

我要回帖

更多关于 c语言基础 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信