易码技术论坛

 找回密码
 加入易码
搜索
查看: 206095|回复: 8

如何在C语言中将变量输出为浮点小数?

[复制链接]
发表于 2007-6-15 18:53:14 | 显示全部楼层
计算机不会加O吧~~~~
发表于 2007-6-15 18:55:25 | 显示全部楼层
printf("x=%f,y=%1.1f\n",x,y);

LS:有时会,因为它可能有个默认的精度.
发表于 2007-6-15 19:03:32 | 显示全部楼层
引用第2楼gameghost2007-06-15 18:55发表的“”:
printf("x=%f,y=%1.1fn",x,y);

LS:有时会,因为它可能有个默认的精度.
对哦~~呵呵



y=%1.1f 是什么意思啊?
发表于 2007-6-15 19:13:39 | 显示全部楼层
1.1
点左面的表示整数显示的位数
点右面的表示小数显示的位数
 楼主| 发表于 2007-6-15 20:09:56 | 显示全部楼层
谢谢大家,楼上说的我明白,我是想让它在输入x=3.1时显示y=4.1,输入x=3.11时,y=4.11,输入x=3.111时,y=4.111,不是让它输出固定位小数。
发表于 2007-6-15 20:25:12 | 显示全部楼层
.....
写个字符串判断,分析小数位数.
 楼主| 发表于 2007-6-15 20:31:44 | 显示全部楼层
没有直接的格式控制符来输出这种格式吗?写个函数太麻烦了,也没这个必要。
谢谢各位对我的无私帮助!
发表于 2007-7-15 20:10:35 | 显示全部楼层
有啊
printf("%g",a);
用%g就行了
 楼主| 发表于 2007-6-15 18:51:11 | 显示全部楼层 |阅读模式
  比如有以下代码:
main()
{  float  x,y;
  printf("input x(-5<x<10):\n");
  scanf("%f",&x);
  if(-5<x&&x<0) y=x;
  if(x==0) y=x-1;
  if(0<x&&x<10) y=x+1;
  printf("x=%f,y=%f\n",x,y);
}

怎样让x和y显示为浮点小数,即x=3.1时,y=4.1而不是y=4.10000
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-20 07:39 , Processed in 0.009751 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表