LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 759|回复: 1

请问怎样获得一个浮点数的小数位数

[复制链接]
发表于 2004-6-12 10:17:37 | 显示全部楼层 |阅读模式
比如一个数是7.3342,那么它的小数位数就是4,怎样编程实现呢,我在VC里面做,老是得不到正确的结果,郁闷  
下面是我的代码

  1. #include "stdio.h"
  2. void main()
  3. {
  4.    float num=7.3342;
  5.    float tmp;
  6.    int count=0;//记录小数位数
  7.    tmp=num;
  8.    while(tmp>1e-6)
  9.   {
  10.       tmp=(tmp-(int)tmp)*10;
  11.       count++;
  12.   }
  13.   printf("%d\n",count);
  14. }
复制代码

    好像循环中的那个tmp-(int)tmp能得到正确的结果,明明相减等于零了,可是老是等于一些杂七杂八的东西,又不知道怎么改正
发表于 2004-6-12 15:44:43 | 显示全部楼层
楼主应该先去了解一下浮点数在计算机中是如何表示的。
对浮点数的运算有专门的函数。不要把浮点数当成整数来进行计算。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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