C语言中的%f格式符

在上一个问题中,有人回答说:对于%f格式符,至少要指定12格输出宽度才可以。这是为什么?... 在上一个问题中,有人回答说:对于%f格式符,至少要指定12格输出宽度才可以。这是为什么? 展开
 我来答
百度网友f00c67a2c
推荐于2017-12-15 · TA获得超过1014个赞
知道小有建树答主
回答量:349
采纳率:0%
帮助的人:417万
展开全部
囧...你两个题都被我撞到了~分都给我吧哇咔咔~
因为你上一个是-789.124,这样%f输出是小数部分按正常6位输出,这样会输出
-789.124002,后面的2是误差,硬件决定,无法避免,这样就有11位啦,包括负号和点,这样你要进行格式控制,12位才会有一个空格啊,这样的格式控制才有效果啊,要是宽度不够12位,那么就是无效的格式控制,一坨数据挤在一起了.
千锋教育
2015-10-16 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
%f在输入输出使用,它表示输入或输出的数为浮点数(即可以带小数的数),如;
float a;
scanf("%f",&a);就可以输入3.15;
a=3.15;
同理%d,表示输入或输出的数为整数。
%c表示输入或输出的数为字符。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
西西泸
2010-02-24 · TA获得超过1460个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:258万
展开全部
不晓得你上个问题是什么,但是%f是输出一个实数,并不需要制定输出宽度的。他的小数位占6宽度,小数点1宽度。 例如
float i = 1
输出结果是 1.000000
i = 11
输出结果是 11.000000

如果是
int i = 11111.22222
printf("%3.3f",i);
输出结果是 11111.222
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式