c - 判断一个数是否是整数?

标签 c floating-point int division

我正在尝试编写一个程序,仅当该数字可被 2 整除时,该程序才会将该数字除以 2。我这样做是为了如果该数字除以 2 的结果是 float ,则将其除以二,像这样:

int p;
printf("Percentage please: ");
scanf("%d", &p);
while (((p/2) != // a floating point value)
{
    p = p/2;
}

但问题是我不确定C标准库中是否有像isint()这样的函数或iswholenumber() 。有什么功能或任何方法可以实现类似的东西吗? 任何帮助将不胜感激。

最佳答案

您正在寻找模运算,它返回除法的其余部分,因此:

if( n % 2 == 1) // the number is not divisible by 2
if( n % 2 == 0) // divisible by 2

关于c - 判断一个数是否是整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20618493/

相关文章:

C free 在嵌套的 mallocs 和 realloc 中不起作用

c - 使用指针数组

c - Linux 与 Windows 上的 printf

python - 检查 float 是否等于python中的整数值

c++ - 求 vector int 的一部分的总和

c - 在C中合并多个整数范围的数据结构和算法

c++ - 如何使用 SSE/AVX 高效地执行 double/int64 转换?

assembly - 从使用x87 FPU的64位汇编函数返回 float

java - 将 getByte() 与原始数据一起使用

java - 将 Java 对象转换为整数