【发布时间】:2023-03-04 05:50:01
【问题描述】:
我是 C 初学者
我在下面的代码中遇到了一些问题:-
代码
#include <stdio.h>
int main()
{
int a = 7, b;
b = a * 0.621;
printf("%f", (float)b);
return 0;
}
输出应该是4.347,但这里的输出是4.000000。
我应该怎么做才能得到4.347 而不是4.000000?
【问题讨论】:
-
不要添加不相关的标签和相关代码的图像。
-
您将乘法的结果分配给
b,它是int类型,因此它会被截断。稍后将b转换为float无法恢复小数部分。必须是float b; -
对错误感到抱歉。实际上,这是我第一次在 Stack Overflow 上,所以我不知道发布问题的规则。我尽力编辑我的问题并使其正确。我再次为我的错误向大家道歉