关于位与运算符问题
看到一个例题,判断给的参数是否是素数,函数如下:#include<stdio.h>
#include<match.h>
int prime(int n)
{
int i=3,j;
if(n<=0||(!(n & 1) && n!=2))
return 0;
for(j=sqrt(n);i<=j;i+=2)
if(!(n%1))
return 0;
return 1;
}
请大虾解释下,这里面是怎样实现判断的的,尤其是(n<=0||(!(n & 1) && n!=2))这个表示什么意思? 谢谢了
[ 本帖最后由 glhz610 于 2010-5-13 19:42 编辑 ]