課程
/后端開發
/C
/C語言入門
這個是這個題目的參考答案? 我愚鈍,還是沒有看懂 ? 希望大佬們能幫忙解惑 謝謝了
2019-03-04
源自:C語言入門 4-14
正在回答
第一次m=2 n=2 里面的表達式是n=2;n<2;n++? 所以只執行一次 2除以2 余0 直接跳出循環 此時n的值是2 m==n所以輸出m=2
第二次m=3 n=2 里面的表達式是n=2;n<3;n++? 兩次循環 3除以2 余3 不成立 n++ 3除以3余0 跳出循環 而此時m=3 n=3所以輸出m=3
第三次m=4 n=2 里面的表達式是n=2;n<4;n++? 三次循環 4/2 余0 跳出循環 m此時是4 n是2就跳出循環了 m!=2 不輸出4
第四次m=5 n=2 里面的表達式是n=2;n<5;n++? 四次循環 5/2余5? 5/3余5 5/4余5 5/5余0 跳出循環 此時m=5 n=5 輸出5
第五次 m=6 n=2? 6/2余0 break? 6不等于2? ?不輸出
第六次 m=7 n=2? 一直循環到7/7才能break m=n輸出7
第七次 m=8 n=2? 8/2余0 m不等于n break 不輸出
第八次 m=9 n=2? 9/2余9? 9/3余0 break 9不等于3 不輸出
第九次 m=10 n=2 10/2余0 不輸出
第10次 m=11 n=2? ?一直循環到11/11才能break
qq_慕姐8196170 提問者
慕粉2113246 回復 qq_慕姐8196170 提問者
慕俠1169626
慕俠1169626 回復 慕粉2113246
無名指的星光 回復 慕粉2113246
無名指的星光 回復 無名指的星光
藍色的藍莓
我覺得應該是這樣,上面的不對
m=2時
n=2;n<2(為假,直接結束循環)執行下一步if(m==n)為真,輸出m的值2
m=3時
n=2;n<3(為真);執行下一步if(m%n==0)(為假,不執行break),繼續循環,n++(此時n=3),
n=3;n<3(為假,直接結束循環)執行下一步if(m==n)為真,輸出m的值3
m=4時
n=2;n<4(為真);執行下一步if(m%n==0)(為真,執行break,跳出循環),執行下一步if(m==n)為假,不輸出m的值
以此類推
因為任何數都能被1和本身整除,所以n的初始值為2,n<m
m除以n,比如12能被2,3,4,6整除,而當除到2的時候就已經知道不是質數了,沒必要再循環下去了,所以用break跳出循環
我也是剛學的新手如有不對之處請指出
無名指的星光
qq_IFelse_uIQRTX 回復 無名指的星光
繪梨衣的審判
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
2 回答為什么if條件是m%n==0?
3 回答m%n==0
4 回答m%n==0
2 回答m%n==0
1 回答為什么是m%n==0
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-03-04
第一次m=2 n=2 里面的表達式是n=2;n<2;n++? 所以只執行一次 2除以2 余0 直接跳出循環 此時n的值是2 m==n所以輸出m=2
第二次m=3 n=2 里面的表達式是n=2;n<3;n++? 兩次循環 3除以2 余3 不成立 n++ 3除以3余0 跳出循環 而此時m=3 n=3所以輸出m=3
第三次m=4 n=2 里面的表達式是n=2;n<4;n++? 三次循環 4/2 余0 跳出循環 m此時是4 n是2就跳出循環了 m!=2 不輸出4
第四次m=5 n=2 里面的表達式是n=2;n<5;n++? 四次循環 5/2余5? 5/3余5 5/4余5 5/5余0 跳出循環 此時m=5 n=5 輸出5
第五次 m=6 n=2? 6/2余0 break? 6不等于2? ?不輸出
第六次 m=7 n=2? 一直循環到7/7才能break m=n輸出7
第七次 m=8 n=2? 8/2余0 m不等于n break 不輸出
第八次 m=9 n=2? 9/2余9? 9/3余0 break 9不等于3 不輸出
第九次 m=10 n=2 10/2余0 不輸出
第10次 m=11 n=2? ?一直循環到11/11才能break
2019-04-05
我覺得應該是這樣,上面的不對
m=2時
n=2;n<2(為假,直接結束循環)執行下一步if(m==n)為真,輸出m的值2
m=3時
n=2;n<3(為真);執行下一步if(m%n==0)(為假,不執行break),繼續循環,n++(此時n=3),
n=3;n<3(為假,直接結束循環)執行下一步if(m==n)為真,輸出m的值3
m=4時
n=2;n<4(為真);執行下一步if(m%n==0)(為真,執行break,跳出循環),執行下一步if(m==n)為假,不輸出m的值
以此類推
因為任何數都能被1和本身整除,所以n的初始值為2,n<m
m除以n,比如12能被2,3,4,6整除,而當除到2的時候就已經知道不是質數了,沒必要再循環下去了,所以用break跳出循環
我也是剛學的新手如有不對之處請指出