大佬求指教
輸出m=3之后m執(zhí)行第一個for語句的第三個代碼自增成為4,判斷m<=50為真,進入第二個for循環(huán)。
此時n=3,m=4,n<m成立,進行第二個for循環(huán)的if判斷4%3==0結(jié)果為假,故n執(zhí)行第二個for循環(huán)的第三塊代碼自增成為4
然后就會進行第一個for循環(huán)的if判斷m==n,此時m=n=4,這輸出不就有問題了么
希望大佬能解惑,我是哪一個地方思考出問題了嗎
輸出m=3之后m執(zhí)行第一個for語句的第三個代碼自增成為4,判斷m<=50為真,進入第二個for循環(huán)。
此時n=3,m=4,n<m成立,進行第二個for循環(huán)的if判斷4%3==0結(jié)果為假,故n執(zhí)行第二個for循環(huán)的第三塊代碼自增成為4
然后就會進行第一個for循環(huán)的if判斷m==n,此時m=n=4,這輸出不就有問題了么
希望大佬能解惑,我是哪一個地方思考出問題了嗎
2019-02-24
舉報
2019-02-25
我是新手,不是大佬,但是可以回答這個問題。
這里你把概念搞錯了,第二個for語句一開始就在第一個分號前定義了n=2,所以順序是這樣的:
(1)執(zhí)行完m=3之后,m執(zhí)行第一個for語句的第三個代碼自增成為4,這里你理解沒問題。
(2)進入第二個for循環(huán),重新定義n=2,(就是這里理解出錯?。。。?/p>
(3)判斷n<m是否成立,此時m=4,n=2,所以n<m成立,進行第二個for的執(zhí)行。
(4)4%2==0結(jié)果為真
后面就不用說了。你就是在第二步這里把for的定義給忘記了,所以嵌套的for需要注意這個。