如何在C中将int转换为float?

时间:2017-03-16 09:05:40

标签: c

我在C中有一个简单的问题。如何将int值转换为float,因此我可以为其添加非整数。

喜欢说

int i = 1;

如何在i中添加0.5以获得1.5的浮点数? 我试过了:

float j = (float)i + 0.5;

似乎不起作用。

请求帮助。

3 个答案:

答案 0 :(得分:6)

我猜你使用了错误的格式说明符。在gcc编译器下面的程序工作正常。

#include <stdio.h>

int main()
{
     int i = 1;
     float j = (float)i + 0.5;
     printf("%f\n",j);
}

<强>输出:

1.500000

答案 1 :(得分:2)

我在visual studio 2012中编写了你的​​代码,它完美无缺。

#include <stdio.h>

int main()
{
    int i = 1;
    float j = (float)i + 0.05;
    printf("%f\n", j);
    return 0;
}

答案 2 :(得分:-5)

您可以通过将float放在int类型变量之前进行简单转换,如下例所示。

((浮点)数/总)* 100