%g 以%f%e中较短的输出宽度输出单,双精度实数(看看这个例子,希望你明白)
main()
{
double a=1000000000;
double b=123.456;
printf("%e\n",a);
printf("%f\n",a);
printf("%g\n",a);
printf("%e\n",b);
printf("%f\n",b);
printf("%g\n",b);
}
%f 表示按浮点数的格式输出
%e 表示按指数形式的浮点数的格式输出
%g 表示自动选择合适的表示法输出
示例程序如下:
#include
void main()
{
float f = 3.1415926;
printf("%f\n", f); // 输出3.141593
printf("%e\n", f); // 输出3.141593e+000
printf("%g\n", f); // 输出3.14159
}
不能用void main(),void main()不是c99标准