1 个回答
Annanus
回答于 2024-07-20
已采纳
提问:c语言输入半径计算球的体积,为什么把float换成double计算的结果就是错误的
#include<stdio.h>#include<math.h>#define p 3.14int main(){ float r,v,;printf("请输入球的半径"); scanf("%f",&r);v=4.0/3*p*pow(r,3);printf("这个球的体积是%.2f\n",v);return 0;}
网友回答:
其实把float换成double是没有问题的。
但是估计是你在变换后没有改变数据类型。
在c语言里,我们输入数据时,数据类型格式要求严格,float对应的是%f,double对应的是%lf。
再输出是要求不太严格,float,double都可以用%f
我认为你是光改了float->double,而没有将%f->%lf
下面是检验图:

还有问题吗,谢谢采纳,Thanks♪(・ω・)ノ
我来回答
相关问题
1
回答
游戏王卡组推荐
单机游戏
567 浏览