如何在C中显示浮点除法的实际结果?

Not*_*ter 3 c floating-point printf division output

我正在学习 C 编程语言,在 Xcode 13.x 中,当我写下以下内容时:

float a = 3 / 2;
float b = 1 / 3;
printf("3 divided by 2 as a float is %f, 1 divided by 3 as a float is %f\n", a, b);
Run Code Online (Sandbox Code Playgroud)

控制台会喊出这样的内容:
3 divided by 2 as a float is 1.000000, 1 divided by 3 as a float is 0.000000

我希望它会显示1.5000000.333333,但为什么不显示呢?我确信解决方案是显而易见且简单的,但基本的谷歌搜索/搜索没有帮助。
我试图#include float.h认为这会有帮助,但没有运气。
我盲目地错过了什么?
谢谢

Mar*_*eaș 5

显然,您试图将除法的结果存储到 a 中float,但浮点数也包括整数。您实际上正在执行整数除法,因为在这两种情况下,您的两项都是整数(没有小数部分)。除法进行四舍五入(结果没有小数部分),并分配给您的变量。

如何纠正这个问题?尝试将小数部分添加到两个数字中的至少一个。例如:

float a = 3.0/2;
Run Code Online (Sandbox Code Playgroud)

这应该可以做到。