需要帮助在 printf 中四舍五入双数
Need help rounding a double number in printf
我正在尝试对乘法和的数字进行舍入,但我没有运气。
我想我用错了 round 函数。但是我什么也找不到。
int main()
{
double euro, ats, sum;
euro = 414;
ats = 13.760;
// Umrechnen in Komma
sum = euro * ats;
printf("Summe = %f\n", sum, lround(sum));
return 0;
}
我的目标是计算414 * 13.760 = 5697四舍五入。
您的代码将 2 个参数传递给 printf
,而您的格式只需要 1 个(%f
)。
printf("Summe = %f\n", sum, lround(sum));
所以你可以简单地(正如尤金在评论中所说):
printf("Summe = %.0f\n", sum);
在这种情况下,您要打印一个四舍五入为小数点后数字的浮点数 (.0
)。
如果您真的想使用 lround
,请注意它 returns 一个 long
(some ref)。所以,你最好:
printf("Summe = %ld\n", lround(sum));
或者也检查 math.h round
、ceil
或 floor
函数!
我正在尝试对乘法和的数字进行舍入,但我没有运气。
我想我用错了 round 函数。但是我什么也找不到。
int main()
{
double euro, ats, sum;
euro = 414;
ats = 13.760;
// Umrechnen in Komma
sum = euro * ats;
printf("Summe = %f\n", sum, lround(sum));
return 0;
}
我的目标是计算414 * 13.760 = 5697四舍五入。
您的代码将 2 个参数传递给 printf
,而您的格式只需要 1 个(%f
)。
printf("Summe = %f\n", sum, lround(sum));
所以你可以简单地(正如尤金在评论中所说):
printf("Summe = %.0f\n", sum);
在这种情况下,您要打印一个四舍五入为小数点后数字的浮点数 (.0
)。
如果您真的想使用 lround
,请注意它 returns 一个 long
(some ref)。所以,你最好:
printf("Summe = %ld\n", lround(sum));
或者也检查 math.h round
、ceil
或 floor
函数!