所在位置:主页 > 程序语言 > C语言怎么只保留小数点后的数字

C语言怎么只保留小数点后的数字

发布时间:2023-12-17 05:39来源:www.sf1369.com作者:宇宇

C语言怎么只保留小数点后的数字

可以利用C语言的强制转换规则。

C语言规定,当浮点数强制转换为整型类型时,只保留整数部分。

所以对于浮点数,比如float类型a, 执行(int)a后的值就是整数部分。

这样当执行a-(int)a时,得到的就是小数部分的值了。

如果该功能经常使用,那么可以定义一个带参数的宏

#define DECIMAL(X) (x-(int)x)

这样执行DECIMAL(a)得到的值就是t的小数部分。

如何用c语言计算小数点后位数(float本身都无法精确)

1、先把浮点数变成字符串,再通过小数点确定小点后面的位数。

2、例程:

#include <stdio.h>

#include <string.h>

void main()  {

    char * ptr;

    char strFloat[20];

    float number=100.25432;

    sprintf(strFloat, %f, number);

    ptr = strstr(strFloat, .);

    if (ptr != NULL) {

        printf(digits after decimal point: %d\n, strlen(ptr) - 1);

    }

}