标题:取两位小数四舍五入
取消只看楼主
dousao
Rank: 2
等 级:论坛游民
帖 子:228
专家分:58
注 册:2007-11-8
结帖率:75%
 问题点数:0 回复次数:2 
取两位小数四舍五入
取两位小数四舍五入,如输入3.145程序执行后输出3.15
======编译无错误,因该是数据转换问题,导致结果不对
===========================================================================================
#include "stdio.h"
#include "math.h"
main()
{
 double a;
 int b,c,d;
 scanf("%f",&a);
 b=a*1000;
 d=b%10;
 if(d<=4)
 {
  c=a*100;
  printf("%f",c/100);
 }
 else
 {
  c=a*100+1;
  printf("%f",(float)c/100);
 }
}


===========
盼人解答
搜索更多相关主题的帖子: 小数四舍五入 include math double int 
2007-11-24 14:48
dousao
Rank: 2
等 级:论坛游民
帖 子:228
专家分:58
注 册:2007-11-8
得分:0 
不知道 整型和实型怎么相互赋值的.
奇怪中.int e=1;
  printf("%f",e);
输出0.0000000
float e=1;
  printf("%d",e);
输出0
一个整型数用%f输出的话就是0.000000
实型用%d输出的话就是0
谁可以解释一下?
2007-11-24 15:59
dousao
Rank: 2
等 级:论坛游民
帖 子:228
专家分:58
注 册:2007-11-8
得分:0 
也不是,我直接改double为float也不行.还是那个问题,实型和整型怎么互相输出?
2007-11-24 16:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-188073-1-1.html




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

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