题解 | #牛牛的球# 关于两种解法的思考
牛牛的球
https://www.nowcoder.com/practice/203ca3114f8845a9bbd673bae6c5dd2b
#include <stdio.h>
int main() {
int r=0;
//输入
scanf("%d",&r);
//输出
//float res=(4.0/3.0)*3.14*r*r*r;
float res=(4*3.14*r*r*r)/3;
printf("%f",res);
return 0;
}
这两个计算方法有什么不同吗?
两种方法都是对的,
为什么 float res=(4.0/3.0)*3.14*r*r*r; 加小数点,是对的,和 float res=(4*3.14*r*r*r)/3; 不加小数点 也是对的
两种算法,实际输出都为 113.040001 判定是对的。
but!
float res=(4/3)*3.14*r*r*r,不加小数点,这样就错了,实际输出为84.779999
加不加小数点,有没有区别?
请求指点
#牛客在线求职答疑中心#