一.基本結構:for(起始狀態;判斷條件;狀態改變){
執行語句;
}
執行順序:for(var i=1;i<3;i++){
alert(i);
}
1.判斷條件 2.執行語句 3.狀態改變
break(結束此循環).continue(跳過本次循環,開始下個循環)
二.例:
1.輸出100 以內與7相關的數
<script type="text/javascript"> var str = ''; for(var i = 1; i <= 100; i++) { if(i % 7 == 0 || i % 10 == 7 || (i > 70 && i < 80)) { str += i + ','; } } alert(str); </script>
2.累加求和 100 以內所有數相加
<script type="text/javascript"> var sum = 0; for(var i = 1; i <= 99; i++) { sum += i; } alert(sum); </script>
3.求階乘 100 以為所有數相乘
<script type="text/javascript"> var sum = 1; for(var i = 1; i <= 100; i++) { sum *= i; } alert(sum); </script>
4.輸出乘法口訣表
<script type="text/javascript"> for(var j = 1; j <= 9; j++) { var str_ln = ''; for(var i = 1; i <= j; i++) { str_ln += i + '*' + j + ' '; } document.write(str_ln + '<br/>'); } </script>
5.棋盤存放糧食輸出總和
<script type="text/javascript"> var count = 1; var sum = 0; for(var i =1;i<=64;i++){ sum += count; count *= 2; } alert(sum); </script>
6.有一對幼兔,幼兔1個月后長成小兔,小兔1個月后長成成兔並生下一對幼兔,問幾個月后有多少對兔子,幼兔、小兔、成兔對數分別是多少。
幼兔 1 小兔 0 成兔 0
幼兔 0 小兔 1 成兔 0
幼兔 1 小兔 0 成兔 1
幼兔 1 小兔 1 成兔 1
幼兔 2 小兔 1 成兔 2
幼兔 3 小兔 2 成兔 3
幼兔 5 小兔 3 成兔 5
當前月份幼兔 = 上個月的成兔+上月小兔
當前月份小兔 = 上月幼兔
當前月份成兔 = 上月成兔+上月小兔
<script type="text/javascript"> var n=prompt("請輸入第幾個月"); var yt = 1; var xt = 0; var ct = 0; for(var month = 1; month <= n; month++) { var pre_yt = yt; var pre_xt = xt; var pre_ct = ct; yt = pre_ct + pre_xt; xt = pre_yt; ct += pre_xt; } alert(yt + ','+ xt + ','+ ct); </script>
7..羽毛球拍15元,球3元,水2元。200元每種至少一個,有多少可能()羽毛球拍最多買13個 球最多買66個 水最多買100個)
<script type="text/javascript"> var cont=0; for(var i = 1; i <= 13; i++) { for(var j = 1; j <= 61; j++) { for(var k = 1; k <= 91; k++) { if((i*15 + j*3 + k*2) <= 200){ cont+=1; } } } } alert(cont); </script>
死循環:while(true){
if(判斷){
break;
}
}
例:1.藍球彈起的高度 100 米,每次彈起是原來高度的0.6倍, 第幾次高度小於1米?
<script type="text/javascript"> var count = 0; var height = 100; while(true) { count++; height *= 0.6; if(height <= 1){ break; } } alert(count); </script>
2.一張紙的厚度是0.0001米,將紙對折,對折多少次厚度超過珠峰高度8848米
<script type="text/javascript"> var count =0; var paper_height = 0.0001; while(true){ count++; paper_height *= 2; if(paper_height >= 8848){ break; } } alert(count); </script>