[C]关于打印浮点数,求解惑

nightspace 2014-09-23 05:14:14
我在c primer plus 看到这个例子:

如果说%.2f 这个意思我理解,但是它写成%1.2f是什么意思?我是说%后面的数字1有什么用?
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
nightspace 2014-09-23
  • 打赏
  • 举报
回复
谢谢楼上各位解惑
熊熊大叔 2014-09-23
  • 打赏
  • 举报
回复
表示显示最小的位数,如果格式化后的输出小于这个长度,则用空格或0补齐长度;如果输出大于这个长度,则它不起作用。 因此输出长度不会比1小,因此这里的1不起作用。 C标准总的说明: An optional minimum field width. If the converted value has fewer characters than the field width, it is padded with spaces (by default) on the left (or right, if the left adjustment flag, described later, has been given) to the field width.
robertbo 2014-09-23
  • 打赏
  • 举报
回复
格式控制符m.n,m表示输出数据宽度,n表示数据精度 1.2f是非法的,小数点前的数字必须大于小数点后的数字
starytx 2014-09-23
  • 打赏
  • 举报
回复
表示输出的宽度。比如下边的代码
	float f = 3.1415926f;
	printf("%5.2f\n" ,f);
输出的3.14前边会有一个空格,保证整个输出占5个宽度。

69,378

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧