如何格式化像 12345.0 这样的 double 以将其打印为 1.234E+04? 我想打印这样的东西:
int N = 1024;
int time = 3476;
printf("%f", (N/time));
输出为:3.394531E+00
最佳答案
您可以对变量使用 float
或将某些变量转换为浮点类型,如下所示:
printf("%f", ((float)N/time));
如果您希望数字始终采用科学记数法 http://www.cplusplus.com/reference/cstdio/printf/您可以将格式替换为“%e”。
值得注意的是,对于所有 f F e E g G a A
,printf
默认要求 double
。
关于c - 在 C 中格式化 double ,如 xxxxE+xx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47413842/