亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

第一步m不是已經等于三了嗎,那個2是怎樣輸出來的

#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;????
}


正在回答

4 回答

給你兩張圖你就明明白白的。

https://img1.sycdn.imooc.com//5c9b4ce700013b1303130095.jpg

https://img1.sycdn.imooc.com//5c9b4ce70001a0e404290203.jpg


0 回復 有任何疑惑可以回復我~
#1

慕圣7336102

還是不懂,第一次m=2 n=2 里面的表達式是n=2;n<2;n++,n<2不滿足,不就不執行了嗎,不就m++了嗎
2019-10-15 回復 有任何疑惑可以回復我~

第一次m=2 n=2 里面的表達式是n=2;n<2;n++? 所以只執行一次 2除以2 余0 直接跳出循環 此時n的值是2 m==n所以輸出m=2

0 回復 有任何疑惑可以回復我~
#1

喬琬

第一次m=2 第二層for循環中,變量初始值n=2不滿足表達式2中的n<m,即n<2。故此循環不是你所說的只執行一次而是0次。
2019-04-01 回復 有任何疑惑可以回復我~
#2

GOLDENBOY1

答案正解
2019-05-05 回復 有任何疑惑可以回復我~
#3

慕瓜3168352

n<2 不滿足為啥還執行一次呢
2019-06-02 回復 有任何疑惑可以回復我~

m++ 是運算完在+1 所以第一次循環m=2


0 回復 有任何疑惑可以回復我~

它是先判斷m<=50,然后執行代碼區,然后在m++

應該是這樣哈

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

第一步m不是已經等于三了嗎,那個2是怎樣輸出來的

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號