雙重for迴圈
阿新 • • 發佈:2020-12-15
什麼是雙重for迴圈
雙重for迴圈就是在一個for迴圈裡在巢狀另一個for迴圈,ji\即兩個迴圈巢狀,還有多重迴圈巢狀的情況,但用的比較少,一般常用的是兩個迴圈巢狀,很少使用多重迴圈,因為for迴圈多了會導致程式碼執行的效率低,而且容易宕機,多迴圈中的總迴圈次數是相乘的,巢狀幾次後幾何級數增長,因此通常情況下在迴圈多次巢狀時,我們是不推薦使用使用的。
語法
外層迴圈一次,內層for迴圈全部執行完成再進行外層的一次迴圈;
for(迴圈變數;迴圈條件;迴圈操作){
for(迴圈變數;迴圈條件;迴圈操作){
}
}
列印99乘法表
當i=1時,執行內層迴圈從j=1到j=i,內層結束後開始 i++,
當i=2時,執行內層迴圈從j=1到j=i,內層結束後開始 i++,
…
當i=9時,執行內層迴圈從j=1到j=i,內層結束後開始 i++,此時i=10;外層迴圈結束
for(var i=1;i<=9;i++){
for(var j=1;j<=i;j++){
document.write(i+"*"+j+"="+Number(i*j)+"\t"+" "); //\t為製表符  為空格
}
document.write("<br/>" ) //換行
}
列印倒三角
當i=1時,開始內層迴圈,j從8開始到j=i,列印*,內層結束後開始i++;
…
當i=8時,再次執行內層迴圈,j從8開始到 j=1,內層迴圈結束後i++,此時i=10;迴圈完畢
for(var i=1;i<=8;i++){
for(var j=8;j>=i;j--){
document.write("*");
}
document.write("</br>"); //列印換行
}
列印正三角
原理與列印倒三角相似, 只是內層迴圈有些不同;
for(var i=1;i<=5;i++){
for(var j=1;j<=i;j++){
document.write("*");
}
document.write("</br>");
}
結果: