返回列表 回复 发帖

指数形式输出

#include<stdio.h>
main()
{
float i=2998.453257845;
double j=2998.453257845;
printf("%e\n%15.2e\n%-10.3e\n%e",i,i,i,j);
}

运行结果:
2.99845e+03
             3.0e+03
3.00e+03
2.99845e+03

首先第一个%e是不指定输出数据所占的宽度和小数位数,为何输出结果为2.99845e+03,究竟小数位为几位呢?
%15.2e 其中小数位为两位,请问3.0e+03,哪两位是小数位的数字呢?
默认是显示6。这里e也占用了一位。

这样,你就能理解每个输出了。
返回列表