我正在用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 ”作为浮点值。
答案 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);