Re: [問題] 迴圈
※ 引述《bizza (絕不放棄)》之銘言:
: int i,j,m;
: for(i=1;i<6;i++) {
: for(j=1;j<6;j++) {
: for(m=1;m<=i;m++) {
: System.out.print("*");
: }
: System.out.println("");
: break;
: }
: }
: 上面執行結果是
: *
: **
: ***
: ****
: *****
恕刪
: 是那個break的關係嗎?
是的
其實只要把自己當成電腦跑一次就知道了
首先i=1
進入j-for迴圈時
先是j=1,然後因為i=1所以m-迴圈中先做1次(m<=i)
但是接下來的break
因為"沒有任何if之類的限制"就將它放在j-for迴圈內
所以只要跑進j-for迴圈就一定會執行到
自動跳出你的j-for迴圈
後面j=2,3,4...根本不會執行
可以說j迴圈和break根本就是多餘了,去掉執行結果依然不變(要同時去掉)
接下來i=2以後的情形也是如此(一直到i=5為止,i=6時跳出i-for迴圈)
所以依序在5行印出1~5個*
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.40.35
※ 編輯: Egriawei 來自: 61.230.40.35 (06/01 23:05)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章