c - 使用 printf 以不同的精度打印 float

标签 c printf

<分区>

一个简单的问题。
我想根据用户输入的精度打印 float ,即对于 num=2.34567prec=2,我应该打印 2.35 作为答案,对于 prec=3,我应该打印 2.346。我们怎样才能做到这一点? (prec 在运行时由用户提供输入)。
提前致谢。

最佳答案

这可能是您正在寻找的:

float num = 2.34567;
int prec = 3;
printf("%.*f", prec, num);

关于c - 使用 printf 以不同的精度打印 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42041501/

相关文章:

c - 为什么 printf() 即使没有被整数变量捕获也能工作?

c++ - std::cout 的更易于键入的替代方案,用于在 C++ 中打印到屏幕

c - VT100 数字键盘使用修饰符(ctrl/shift/alt)时的转义码

c - Strdup() 不工作

haskell - 这是 Haskell 的 printf "%g"中的错误吗?

c - 使用包含 union 和类型成员的结构

c - makefile 特定于目标的文件

c - 如何检查 Windows 程序的 C++ 文件是否存在?

c - 释放动态分配的二维结构

c++ - 在 C/C++ 中将十六进制数组作为字符串写入文件