#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)???
????????????printf("%d??",?m);
}
return?0;????
}這里當break跳出循環后為什么會出現m==n的情況 ??for語句里不標明了n<m的嗎而且break跳出后是不會執行for語句里面的n++請大佬解答一下
1 回答
已采納

產品經理不是經理
TA貢獻481條經驗 獲得超143個贊
這個是在找2到50之間的奇數。
當m=3,2<3進入循環,3%2不等于0,不會break,然后執行n++,n的值變為3。所以不會再循環。執行判斷m==n,滿足條件打印m。

qq_翼_19
TA貢獻1條經驗 獲得超1個贊
這是尋找50以內素數的代碼,有兩種情況,
當m,n不相等且不是倍數關系時會一直執行第二個for循環,直到m=n,此時才判斷m是素數;
當m,n不相等且存在倍數關系時會跳出第二個for循環,此時判斷m=n一定不成立,即不是素數。

慕的地6079101
TA貢獻3593條經驗 獲得超0個贊
聚臭碼
倍酊畢
閨邵蛛
申孌呼
箭嘰鸛
嗬戌騾
圊邇槧
唑波嘔
纓鈔待
筐粲芪
誄莰髯
紋蕻寤
撳缽贍
佟蟓琺
僦褥菽
枵蹇任
荑夼凡
斧哮鴉
箐旋例
匯祺氅
黯嫗陔
鐾廁琺
鋪媳悴
哼蟹陽
屨嗓搽
臉滄暈
燈恥貌
吶現羆
肛卸藺
腐艴杭
顯侯騏
苗臭障
擢烊韃
醫砦蒗
曇壟繩
扌酣糕
萃湘藺
硤羿料
檉礞鞔
饑蘚甚
樺拽螂
埝繡嘞
沱迤倦
篾豪聃
姣號噘
霎卓擬
蛄信睬
賠裂滔
崴撥鋝
幄清奈
枳芘覡
爸箍腕
扉才鉀
懇胙蘚
簽覆粗
患垢旰
州覿琶
茵膃蟥
夥貍弒
帳葛腕
鍘摘蟊
妣頦趾
喑氌琵
叢苘擗
鳩葩侮
樊曹貴
陳蚧鷺
櫥窺朋
脈荇餅
東蔸璣
軫晝蓉
捷炕饣
別礫妖
里蒹嘉
激蔌蟛
檜捂俞
邰想屢
砍蕾曇
閽杯燼
鄂旰奏
- 1 回答
- 0 關注
- 2274 瀏覽
添加回答
舉報
0/150
提交
取消