同:都是C语言中的格式控制符,用于格式化输出浮点数。
异:对于小数点后面的零的处理方式。
1.%f 格式控制符会保留小数点后面的所有零,不会进行舍入或省略。例如,对于浮点数3.14,使用 %6f 输出时会显示为 3.140000。
2.%g 格式控制符会根据浮点数的精度自动选择使用 %f 或 %e(指数表示法)来输出。它会自动省略小数点后面的多余零,并且对于较大或较小的数会使用指数表示法。例如,对于浮点数 3.140000,使用 %g 输出时会显示为 3.14。尽管是%.6g,也是输出3.14。
#include <stdio.h>
#include <math.h>/*调用 pow指数函数*/
int main(){
double a=6*pow(10,6);/*a=600000*/
printf("%f\n",a);/*%f是以小数的形式输出,不对小数点后的'0'做处理,只考虑保留小数点后的小数位数*/
printf("%.6f\n",a);/*'.'后的数字'6'表示的是小数点后保留的小数位数*/
printf("%e\n",a);/*%e是以指数的浮点数的格式输出*/
printf("%g\n",a);/*%g是自动选择合适的表示法输出*/
return 0;
}