c语言中%g代表什么

如题所述

g格式 符,用来输出实数,输出格式为f格式或e格式,系统根据数据占宽度m大小,自动选择占宽度较小的某种格式输出,g格式符不输出小数点后无意义的零。
例:
main()
{
float x=654.321;

printf("%f,%e,%g",x,x,x);

}
打印输出:654.320984,6.543210e+002,654.321(其中输出的654.320984是因为在内存中的存储误差引起的)
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-15
%g是转换说明符的一种,具体指代浮点数(去掉无意义的0)
%f也可指代浮点数,但输出时保留无意义的0
例子:
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
float j;
j=11.2333;
printf("j=%g\n",j);
printf("j=%f\n",j);
return 1;
}
运行程序后,终端输出:
j=11.2333
j=11.233300
第2个回答  推荐于2017-09-11
%g是在%f和%e中较短的形式输出,并且会省略多余的0本回答被提问者采纳
第3个回答  2010-04-15
%g 表示程序自动选择合适的表示法
第4个回答  2015-05-16
%g是在%f和%e中较短的形式输出,并且会省略多余的0
相似回答