有点无法理解!
#include <stdio.h>
int main()
{
int m, n;
for(m=2; m<=50; m++)
{
for(n=2; n<m; n++)
{
if( m%n==0 ) //什么条件下跳出当前循环
break; //这里应该退出当前循环了
}
if(m == n) //n循环结束后,如果m=n的话就输出m
printf("%d ", m);
}
return 0;
}
一直想不明白这句是为什么 if(m == n)
m==2 能勉强理解
m==3 为什么?
外循环m=3时 for(n=2; n<m; n++) 是不是就等价于for(n=2; n<3; n++)
这时候n=2后 内循环就应该停止了啊,怎么实现的n==3的?