C语言求素数的一些问题 求各位天才给解释下
#include<stdio.h>#include<math.h>
void main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)
break;
if(i>=k+1)
{
printf("%d ",m);
n=n+1;
}
if(n%10==0)
printf("\n");
}
printf("\n");
getchar();
}
这是写的
有几个不懂的地方,
1.if(i>=k+1)这里上面已经FOR语句里面循环范围已经规定了i<=k啊
2.我如果把if(i>=k+1)改成if(i=k+1)就没输出,改成if(i>k+1)就变成101 103 105 107这样一路下来了
新手求解啊
麻烦各位天才给解释下