C语言判断浮点数是不是整数
时间: 2023-06-01 14:03:40 浏览: 488
可以通过以下方式判断一个浮点数是否为整数:
1. 将浮点数强制转换为整数,然后将得到的整数转换回浮点数,并与原始浮点数进行比较。如果两者相等,则原始浮点数是整数。
2. 判断浮点数的小数部分是否为0。可以使用库函数fmod()来获取浮点数的余数,如果余数为0,则说明浮点数是整数。
以下是代码示例:
方法1:
```c
#include <stdio.h>
int main()
{
double num = 3.0;
int int_num = (int)num;
double diff = num - int_num;
if (diff == 0)
{
printf("The number is an integer.\n");
}
else
{
printf("The number is not an integer.\n");
}
return 0;
}
```
方法2:
```c
#include <stdio.h>
#include <math.h>
int main()
{
double num = 3.0;
double int_part, frac_part;
frac_part = modf(num, &int_part);
if (frac_part == 0)
{
printf("The number is an integer.\n");
}
else
{
printf("The number is not an integer.\n");
}
return 0;
}
```
阅读全文