简单的描述C语言中格式符%g的用法
%g是一个很好用的格式符,在很多时候可以方便我们。
在输出的时候我们使用%g会有什么样的奇特用法呢,比如我们想要输出一个12.3,但是如果你选择使用%f作为格式符,就会输出12.300000。但是很多时候我们只想要打印出12.3,这个时候可以选择%g进行格式化,输出结果就会变成12.3。它将后面无用的0全部舍去了,可以在很多时候满足题目的要求。
举个例子
12.3+12.7如果使用%f输出,你将会得到25.000000,而有的时候你并不想要小数点末尾这么多的0,你可能会选择强制转换成int类型,但是这样子会显得有点繁琐,这个时候%g的妙用就体现出来了,使用%g格式符输出之后,直接得到25了,它会自动将小数点后面没用的0过滤掉,这个设置就显得十分人性化了。而且小数点后面的有效数字也不会省略掉,这个格式符简直好用到爆!
再看看维基百科是怎么解释这个格式符的
'g’使用小写字母,'G’使用大写字母。小数点右侧的尾数0不被显示;显示小数点仅当输出的小数部分不为0。
真的是言简意赅。
#include <stdio.h>
int main(){
printf("%f",12.3);
printf("%g",12.3);
printf("%f",12.3+12.7);
printf("%d",int(12.3+12.7))
printf("%g",12.3+12.7);
return 0;
}