*f标志默认为1 //默认他是素数
在2到n/2(更好的可以在2到√(n+1))中找寻因子,若!(n%k)即n%k == 0 则k是因子,故改变*f为0
其实此时可以直接break;
综上prime的功能是判断n是否是质数,是的话*f=1,否则*f=0;
调用:
int judge;
prime(2,&judge);//因为2是素数,所以judge=1
f表示返回1,0!1表示是素数,否则为非素数!
前边循环为判断是否素数!也就是n能否除以2~n/2的整数
貌似是求n是否为素数,如果是素数则*f=1;否则*f=0;
if(!(n%k))
{
*f=0;
break;
}