为啥输出的结果是0
如图,结果不应该是1.500000吗 自动转整。
浮点
3.0 /2
3/2.0 ba21 发表于 2022-8-6 22:46
自动转整。
浮点
那为啥不是1 竹逸 发表于 2022-8-6 22:56
那为啥不是1
printf("%f\n", 1);
printf("%f\n", 3);
你看看结果,那是printf的功能。
https://www.zhihu.com/question/496640195
https://blog.csdn.net/aa838260772/article/details/39496017 ba21 发表于 2022-8-6 23:13
printf("%f\n", 1);
printf("%f\n", 3);
你看看结果,那是printf的功能。
看的稀里糊涂的{:10_266:} 竹逸 发表于 2022-8-6 23:37
看的稀里糊涂的
在C语言中,整数除以整数值一定为整数
所以,在你的代码中3 / 2的值是1
而%f是浮点数类型的格式化符号,而1是一个整数,所以%f读不到1,自然输出了0
所以你的程序应改为
#include <stdio.h>
int main()
{
printf("3 /2 = %f\n", 3.0 / 2);
return 0;
}
页:
[1]