判断整数

<SCRIPT   language=JavaScript>  
  function   IsNum(theField)  
  {  
  if   (!IsNum2(theField.value))  
        {alert("该区域只能输入数字!");  
  theField.value   ="";  
  theField.focus();}  
  }  
  function   IsNum2(s)  
  {  
  var   Number   =   "0123456789.";  
  for   (i   =   0;   i   <   s.length;i++)  
          {        
                  //   Check   that   current   character   isn't   whitespace.  
                  var   c   =   s.charAt(i);  
                  if   (Number.indexOf(c)   ==   -1)   return   false;  
          }  
  return   true  
  }  
  </script>  
  <input   name=a123   type=text   onblur=IsNum(this)>

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/RealyOnIT/archive/2009/01/13/3765601.aspx

 

在C语言中,判断一个数是否为整数有多种方法: - **使用四舍五入结合向下取整的思想**:有时候输入一个整数给 double 型变量时,存储的值可能存在误差,如输入 1 可能存为 0.9999999,可通过 `floor()` 函数向下取整,并结合 `a + 0.5` 进行四舍五入来判断。不过文档未给出具体代码实现,但提供了思路 [^1]。 - **利用误差判断**:由于实数在计算机中不能准确存储,不能直接判断两个实型量是否相等,需要明确允许的误差范围。一般当误差的绝对值小于 `1e - 8` 时,可认为两个实数相等。示例代码如下: ```c #include <stdio.h> #include <math.h> int main() { float x; // 这里可添加输入 x 的代码,如 scanf("%f", &x); if(fabs(x-(int)x)<1e-8) printf("x是一个整数\n"); else printf("x不是一个整数\n"); return 0; } ``` [^2] - **通过强制类型转换比较**: - 方法一:将浮点数 `b` 强制转换为整数 `c`,并将 `b + 0.999999` 强制转换为整数 `d`,若 `c` 等于 `d`,则为整数。示例代码如下: ```c #include <stdio.h> int main() { float b; // 这里可添加输入 b 的代码,如 scanf("%f", &b); int c = (int)b, d = (int)(b + 0.999999); if (c == d) printf("是整数\n"); else printf("不是整数\n"); return 0; } ``` [^2] - 方法二:直接判断 `b - (int)b` 是否等于 0,若等于 0 则为整数。示例代码如下: ```c #include <stdio.h> int main() { float b; // 这里可添加输入 b 的代码,如 scanf("%f", &b); if(b - (int)b == 0) printf("是整数\n"); else printf("不是整数\n"); return 0; } ``` [^2] - 方法三:判断 `b` 是否不等于 `(int)b`,若不相等则不是整数。示例代码如下: ```c #include <stdio.h> int main() { float b; // 这里可添加输入 b 的代码,如 scanf("%f", &b); if( b != (int)b ) printf("不是整数\n"); else printf("是整数\n"); return 0; } ``` [^2]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值