编程输出100以内的素数。代码如下(摘自课本):
int main(void)
{
int n,i;
for(n=2;n<=100;n++)
{
for(i=2;i<n;i++)
if(n%i==0)break;
if(i>=n)printf("\t%d",n);
}
getch();
return 0;
}
课本讲解如下:...第二层循环中对数n用2~n-1逐个去除,若某次除尽则跳出改循环,说明不是素数。如果在所有的数都是未除尽的情况下结束循环,则为素数,此时有i>=n,故可经此判断后输出素数。
问题如下:i 怎么可能大于或等于n?!在第二个循环中i=n就跳出回到第一个循环去了啊?我晕。