JAVA"计算1⼀1+1⼀2+2⼀3+3⼀5+5⼀8+...前100项的和"不知为什么会对a进行强制转换,请高手帮忙分析!如图

2025-01-20 07:10:54
推荐回答(4个)
回答1:

(double) 表示a/b当作double来运算 int类型的运算能自动转型赋值给double类型的sum 所以结果有.00;
虽然能自动转型 但是会损失精度 也就是错误

回答2:

执行顺序,(double)(a/b)
a>b时 a/b = 0

回答3:

计算的过程中,不要四舍五入、最后的结果再做四舍五入

~
~
~

回答4:

这个就是运算 优先级 的问题呀

你把a,b都设置成 double 好了