请为我这个非常基本的问题鞭挞我,但我仍然无法理解为什么会这样.
我读到了为了在昏迷后打印几个值,我应该在C中使用%.f
所以我有这个问题,计数90/100.我希望打印0.9
#include <stdio.h>
#include <math.h>
int main()
{
double c=0;
c = 90/100;
printf("%.1f\n", c);
}
Run Code Online (Sandbox Code Playgroud)
它显示我0.0 ..(错误..).试图将其更改为(printf("%f \n",c))返回0.00000 ..(错误..)
谁能帮我这个?(对不起,编程真的很新......)
谢谢
问题是你正在进行整数除法.整数表示90/100 = 0.
如果你想获得0.9,请执行:90.0/100.0
问题在于
c = 90/100;
Run Code Online (Sandbox Code Playgroud)
虽然,它将被分配给双数据类型,但计算本身都是整数,这就是值为0.0的原因.
尝试,
c = 90.0/100;
Run Code Online (Sandbox Code Playgroud)