当两个变量都是如何将float除以整数?

时间:2014-01-23 11:53:14

标签: c++ c linux unix integer

我正在用C编写程序。我有两个变量,其中一个是整数,另一个是float。我想将float除以整数,并希望得到float的结果。我正在做以下事情:

int a;
float b=0,c=0;
scanf("%d",&a);

这里我在b上做一些计算,所以它的值随机增加,即33等。

c = b/(float)a;
printf("c = %2.f\n", c);

问题是我将' c '作为舍入数字(整数)而不是浮点值。 如何将“ c ”作为浮点值。

3 个答案:

答案 0 :(得分:23)

对于那些来自Google搜索的人,因为问题的名称:

将float除以整数的结果是float,这是干净且安全的。例如:

#include <iostream>

int main()
{
    float y = 5.0f;
    int x = 4;
    std::cout << y/x << std::endl;
}

输出符合预期:1.25

答案 1 :(得分:4)

你的问题在这里:

printf("c = %d\n", c);

%d将c格式化为整数。请改用%f

如果您愿意,可以std::cout << "c = " << c << std::endl

答案 2 :(得分:0)

在屏幕上打印时尝试这个(这对我有用):

printf("c = %f\n", c);