#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;
}
当m=4,n=2,m%n==0条件成立,直接break跳出循环体,此时下面的 if(m == n) 条件是不成立的所以不会打印输出,根本不会有机会让n循环到4和m相等,接下来就开始m++(m=5)开始下一轮循环了。