获取数字的第一个小数位

我有一个例如: 2.4444444 。 我需要在点后得到第一个数字 – 在我的情况下它是4 。 怎么实现呢?

怎么样

 ( (int)(floor( fabs( num ) * 10 ) ) ) % 10 

把它们拿出来! 试过它,希望它有所帮助

 #include int main() { int b; float a; a=2.4444; 'load some value b=(int)a; 'typecast it into integer you get 2 into b variable a=ab; ' subtract b from a and you will get decimal point value 0.4444 a=a*10; ' multiplying with 10 gives 4.444 b=(int)a; ' now apply the same logic again printf("%d",b); 'outputs 4 } 

使用这些链接更新写入这些function

从C中的浮点数中提取小数部分

它可以很简单

 num*10%10 
 (int)(num * 10) - ((int)num) * 10