課程
/后端開發
/C
/C語言入門
即使刪掉n<m,程序也能正常運行。而且,依據素數的條件,n與m同時自增的情況下不應該一直相等嗎
2020-12-18
源自:C語言入門 4-14
正在回答
n<m有意義。
n<m的意義在于規定了for循環跳出的條件。
程序也能運行成功是因為:
for循環里有一個if語句,只有滿足了if語句里的條件時,才會執行。換言之,滿足不了則不執行,而是執行n<m,繼續判斷if語句里的條件。之后n加一。繼續執n<m等等。
如果把n<m刪去,就變成了for(n=2;;n++),一般的話它因該是一個死循環,但是這個for循環下是一個if語句,當n<m時,滿足條件的是像4,6,8,9,10這些有別的因數的數.
當n>=m,即n>=50時,m除50外永遠不可能整除n,所以就不會執行if語句;
我猜想計算機自動跳出了,去判斷n==m.
有的軟件版本也許不能夠跳出,嚴謹的話就加上。
n與m沒有同時自增。
m增加一,下面for循環一次。下面for循環時n不止增加了一次。
不是吧
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
3 回答for(n=2; n<m; n++)的n<m是什么意思
4 回答if(m==n) 是什么意思
1 回答n<m,為什么m==n
4 回答if(m==n)僅僅是為了判斷for(n=2;n<m;n++),從而輸出m=2的嗎?
1 回答n<m和后面的n=m不是沖突了嗎?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2020-12-20
n<m有意義。
n<m的意義在于規定了for循環跳出的條件。
程序也能運行成功是因為:
for循環里有一個if語句,只有滿足了if語句里的條件時,才會執行。換言之,滿足不了則不執行,而是執行n<m,繼續判斷if語句里的條件。之后n加一。繼續執n<m等等。
如果把n<m刪去,就變成了for(n=2;;n++),一般的話它因該是一個死循環,但是這個for循環下是一個if語句,當n<m時,滿足條件的是像4,6,8,9,10這些有別的因數的數.
當n>=m,即n>=50時,m除50外永遠不可能整除n,所以就不會執行if語句;
我猜想計算機自動跳出了,去判斷n==m.
有的軟件版本也許不能夠跳出,嚴謹的話就加上。
2020-12-20
n與m沒有同時自增。
m增加一,下面for循環一次。下面for循環時n不止增加了一次。
2020-12-19
不是吧