【C语言】如何只打印小数的有效数字位数且不补0

🦄个人主页:修修修也

🎏所属专栏:C语言

⚙️操作环境:Visual Studio 2022


我们在编程过程中时常会碰到使用printf打印小数但只想显示该小数有有效数字的小数位数,这时使用%f或者%lf打印时往往会出现以下情况:

但是如果我们不想打印39.5之后的0,那么就需要将c语言中printf语句中的%f(表示十进制浮点数)换成%g(用来输出实数,它可以根据数值的大小自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的0。)即可。

效果如图:

 同理,类似的格式控制符还有:

  1. %c:单个字符
  2. %d:十进制整数(int)
  3. %ld:十进制整数(long)
  4. %lf:十进制浮点数(double)
  5. %o:八进制数
  6. %s:字符串(char)
  7. %u:无符号十进制数(DWORD)
  8. %x:十六进制数(0x00000)

以上就是有关该问题的解决方法,如果还想了解更多的有关C语言printf()函数的输入输出问题可以移步这篇文章,有关printf()函数的一切细节都在里面了:

【C语言】数据输出的域宽控制(如何在输出数据时控制0占位)(如何输出前导0)icon-default.png?t=N7T8https://blog.csdn.net/weixin_72357342/article/details/129753739?spm=1001.2014.3001.5502

相关文章推荐:

【C语言】判断字符类型的三种方法

【C语言】qsort()函数详解:能给万物排序的神奇函数

【C语言】整形数据和浮点型数据在内存中的存储

【C语言】结构体的大小是如何计算的(结构体对齐)



评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

修修修也

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值