#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; }
这个代码运行出来的结果就是2
当一个程序运行完时(单个小程序),加分号;
当它是个大程序时,不加分号,如:
if
for
else
else if
明白请采纳(*´゚∀゚`)ノ
形如
if(条件)
语句1;
的代码,当if(条件)后面加了分号之后,将成为
if(条件);
语句1;
这样,当条件表达式为真或不为真,都会执行语句1,且为真时,执行的是空语句,即分号前的语句,相当于:
if( 条件) 空语句;
语句1;
在你的代码中第九行,if后面加了分号,意味着不管m%n==0是否为真,都会直接执行break语句跳出循环。