break 跳出循環(huán)
#include <stdio.h>
int main()
{
? ? int m, n;
? ? for(m=2; m<=50; m++)
? ? {
for(n=2; n<m; n++)
? ? ? ? {
? ? ? ? ? ? if( m%n==0? ?)? ? ? ?//什么條件下跳出當(dāng)前循環(huán)
? ? ? ? ? ? ? break;? ? ? ? ? ? ? ? ?//這里應(yīng)該退出當(dāng)前循環(huán)了
}
? ? ? ? if(m == n)? ?//n循環(huán)結(jié)束后,如果m=n的話就輸出m
? ? ? ? ? ? printf("%d? ", m);
}
return 0;? ??
}
這段代碼不是很懂,m和n不是每次循環(huán)都相同的嗎,
?if(m == n)? ?為什么要有這一句?
希望有人能解釋一下把,我沒有看懂,很懵有點。
2020-01-11
當(dāng)m=3的時候,n只能循環(huán)一次,那么n只能=2,為什么可以得出m==n,難道n還可以自增,不是說for循環(huán)內(nèi)++1和1++無區(qū)別嗎?
2019-07-07
#include <stdio.h>
int main()
{
? ? int m, n;
? ? for(m=2; m<=50; m++)
? ? {? ? ?//? ? ? ?2<=50//向下進(jìn)行
?//? ? ? ? ? ? ? ? 3<=50; m++; m=3
for(n=2; n<m; n++)
? ? ? ? { // 2<2退出循環(huán) n++,n=3
?//n又初始化為2,2<3? ??3<3,假? ?
? ? ? ? ? ? if(? ? m%n==0? ? )
? ? ? ? ? ? ? ? ?//3%2==1不等于0,if語句不成立? ? ? ? //什么條件下跳出當(dāng)前循環(huán)
? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? }//這里應(yīng)該退出當(dāng)前循環(huán)了
}
? ? ? ? if(m == n)? ?//n循環(huán)結(jié)束后,如果m=n的話就輸出m
? ? ?//????2? ==2?//成立
? ? ? //? ?3? = =3? ? ? ?
????printf("%d? ", m);
? ? ? ? ? ? ? ? ?//輸出m=2
}
return 0;? ??
}
2019-07-02
break就是結(jié)束當(dāng)前循環(huán) ifm%n=0了之后,循環(huán)停止,自然跳出循環(huán)啊,我是這么理解的