| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1329 人关注过本帖
标题:float x=67.8564,y=-789.124;printf("%-10f,%-10f\n",x,y);运行结果疑问求解 ...
取消只看楼主 加入收藏
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:3 
float x=67.8564,y=-789.124;printf("%-10f,%-10f\n",x,y);运行结果疑问求解答
void main()
{
float x=67.8564,y=-789.124;
printf("%-10f,%-10f\n",x,y);
}
运行结果 y=-789.124023 多出来的 023 是怎么回事。。。不是-789.124000补足小数点后6位的吗?刚开始自学C语言。请大家见谅。。谢谢!!
搜索更多相关主题的帖子: 小数点 C语言 
2015-09-22 20:19
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
多谢楼上前辈的解答。。。。。。

浮点型讲的都是文字理论,没有例子脑袋转不过来。见谅!

把 printf("%-10f,%-10f\n",x,y);改成 printf("%-10g,%-10g\n",x,y);或printf("%-10.4f,%-10.3f\n",x,y);
其中 %-10f 改为 %-10g是输出宽度较短的一种格式 y=-789.124023 后面的 023 也就没了。改为 %-10.3f 是吧小数后面
定位 3 个数。我的问题是如果不改,那么输出的时候 y=-789.124 后面加的 023 是系统为了补满小数点后6位随机加的吗?
vc++6.0随机+023 其他的就可能+别的数字。是不是这样?
2015-09-23 10:06
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
谢谢。hjx1120的解惑。
 现在知道了。
2015-09-23 11:09
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
按确认结贴。为什么没有反应。分数都有分配完的。。。
2015-09-25 19:54
快速回复:float x=67.8564,y=-789.124;printf("%-10f,%-10f\n",x,y);运行结果疑 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015870 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved