for循環

編程語言中一種循環語句

for循環是編程語言中一種循環語句,而循環語句由循環體及循環的判定條件兩部分組成,其表達式為:for(單次表達式;條件表達式;末尾循環體){中間循環體;}。

一般形式


for循環是開界的。它的一般形式為: for(<初始化>; <條件表過式>; <增量>) 語句; 初始化總是一個賦值語句, 它用來給循環控制變數賦初值; 條件表達式是一 個關係表達式, 它決定什麼時候退出循環; 增量定義循環控制變數每循環一次后 按什麼方式變化。這三個部分之間用";"分開。例如: for(i=1; i<=10; i++) 語句; 上例中先給i賦初值1, 判斷i是否小於等於10, 若是則執行語句, 之後值增 加1。再重新判斷, 直到條件為假, 即i>10時, 結束循環。
for循環
for循環

注意事項


1. for循環中語句可以為語句體, 但要用"{"和"}"將參加循環的語句括起來。
2. for循環中的"初始化"、"條件表達式"和"增量"都是選擇項, 即可以預設, 但";"不能預設。省略了初始化, 表示不對循環控制變數賦初值。省略了條件 表達式, 則不做其它處理時便成為死循環。省略了增量, 則不對循環控制變數進 行操作, 這時可在語句體中加入修改循環控制變數的語句。
3. for循環可以有多層嵌套。
例:
#include
int main(void)
{
int i, j, k;
printf("i j k\n");
for (i=0; i<2; i++) for(j=0; j<2; j++) for(k=0; k<2; k++)
printf(%d %d %d\n", i, j, k);
return 0;
}
輸出結果為: i j k 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
JS For 循環
在編寫代碼時,你常常希望反覆執行同一段代碼。我們可以使用循環來完成這個功能,這樣就用不著重複地寫若干行相同的代碼。
JavaScript 有兩種不同種類的循環:
for
將一段代碼循環執行指定的次數
while
當指定的條件為 true 時循環執行代碼
for 循環
在腳本的運行次數已確定的情況下使用 for 循環。
語法:
for (變數 = 開始值;變數 <= 結束值;變數 = 變數 + 步進值) {需執行的代碼
} for (變數 = 開始值;變數 <= 結束值;變數 = 變數 + 步進值) {需執行的代碼 }實例:
解釋:下面的例子定義了一個循環程序,這個程序中 i 的起始值為 0。每執行一次循環,i 的值就會累加一次 1,循環會一直運行下去,直到 i 等於 10 為止。
註釋:步進值可以為負。如果步進值為負,需要調整 for 聲明中的比較運算符。
var i = 0for(i = 0; i <= 10; i++) {
document.write("The number is " + i) document.write("")
}
結果:
The number is 0The number is 1The number is 2The number is 3The number is 4The number is 5The number is 6The number is 7The number is 8The number is 9The number is 10 The number is 0The number is 1The number is 2The number is 3The number is 4The number is 5The number is 6The number is 7The number is 8The number is 9The number is 10
PHP for 循環
for 循環是 php 中最複雜的循環結構。它的行為和 C 語言的相似。 for 循環的語法是:
for (expr1; expr2; expr3) statement第一個表達式(expr1)在循環開始前無條件求值一次。
expr2 在每次循環開始前求值。如果值為 TRUE,則繼續循環,執行嵌套的循環語句。如果值為 FALSE,則終止循環。
expr3 在每次循環之後被求值(執行)。
每個表達式都可以為空。expr2 為空意味著將無限循環下去(和 C 一樣,php 認為其值為 TRUE)。這可能不像想象中那樣沒有用,因為經常會希望用 break 語句來結束循環而不是用 for 的表達式真值判斷。
考慮以下的例子,它們都顯示數字 1 到 10:
for ($i = 1; $i <= 10; $i++) {
echo $i;
}
for ($i = 1; ; $i++) {
if ($i > 10) {
break;
}
echo $i;
}
$i = 1;
for (;;) {
if ($i > 10) {
break;
}
echo $i;
$i++;
}
for ($i = 1; $i <= 10; echo $i, $i++);
?>
for循環
for循環

語法

1.語句最簡形式為:
for( ; ; )
2.一般形式為:
for(單次表達式;條件表達式;末尾循環體)
{
中間循環體;
}
其中,表示式皆可以省略,但分號不可省略,因為“;”可以代表一個空語句,省略了之後語句減少,即為語句格式發生變化,則編譯器不能識別而無法進行編譯。
for循環小括弧里第一個“;”號前為一個為不參與循環的單次表達式,其可作為某一變數的初始化賦值語句, 用來給循環控制變數賦初值;也可用來計算其它與for循環無關但先於循環部分處理的一個表達式。
“;”號之間的條件表達式是一個關係表達式,其為循環的正式開端,當條件表達式成立時執行中間循環體。
執行的中間循環體可以為一個語句,也可以為多個語句,當中間循環體只有一個語句時,其大括弧{}可以省略,執行完中間循環體後接著執行末尾循環體。
執行末尾循環體后將再次進行條件判斷,若條件還成立,則繼續重複上述循環,當條件不成立時則跳出當下for循環。
3.for循環流程圖
執行過程為:
求解表達式1;
求解表達式2。若其值為真,則執行 for 語句中指定的內嵌語句,然後執行第3步;若表達式2值為假,則結束循環,轉到第5步;
求解表達式3;
轉回上面第2步繼續執行;
循環結束,執行 for 語句下面的語句。
執行過程中,“表達式1”只執行一次,循環是在“表達式2”“表達式3”和“內嵌語句”之間進行的。

四種運行模型


(1)三角基本模型:
示例:
1
2
3
4
5
6
7
8
9
10
11
#include
int main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
for(;a
{
c=a;a=b;
}
printf("由大到小排序:%d,%d",a,b);
}
(2)中間循環體被省略,只剩下“;”空語句時的左右往返模型:
條件表達式——末尾循環體
示例:
1
2
3
4
5
6
7
8
#include
int main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
for(;a
printf("由大到小排序:%d,%d",a,b);
}
(3)末尾循環體被省略后的上下往返模型條件表達式——中間循環體
示例:
1
2
3
4
5
6
7
8
9
#include
int main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
for(;a
c=a,a=b,b=c;
printf("由大到小排序:%d,%d",a,b);
}
(4)條件表達式被省略得只剩下“;”空語句時,中間循環體或末尾循環體帶有跳出語句時的模型:
示例:
1
2
3
4
5
6
7
8
9
#include
int main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
for(c=a;;){break;}
if(a
printf("由大到小排排序:%d,%d",a,b);
}
(3)注意事項
1.for循環中的變數可以是一個也可以是多個。
2.for循環中語句可以為語句體, 語句體外加大括弧"{}"將參加循環的語句括起來。
3. for循環中的"單次表達式"、"條件表達式"和"循環體語句"都是選擇項, 即可以預設成只剩下“;”的空語句,。

其他用法


1. for循環可以有多層嵌套。示例:
1
2
3
4
5
6
7
8
9
10
11
#include
int main(void)
{
int i,j,k;
printf("ijk\n");
for(i=0;i<2;i++) 
for(j=0;j<2;j++) 
for(k=0;k<2;k++)
printf("%d%d%d\n",i,j,k);
return 0;
}
輸出結果為: i j k 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
2. for循環中的變數生存周期為一次循環迭代。
1
2
3
4
5
6
7
8
9
10
11
#include
int main(void)
{
int i;
for(i=0;i<9;i=i+1)
{
int a=i;
printf("%d\n",a);
}
return 0;
}
C語句中變數必須聲明在前才能使用,在定義語句之前使用變數是不合法的。
for循環
for循環

功能比較


一、循環的結構不同
for循環的表達式為:
for(單次表達式;條件表達式;末尾循環體)
{
中間循環體;
}
while循環的表達式為:while(表達式){循環體}[5]
二、執行條件的判斷方式不同
for循環執行末尾循環體后將再次進行條件判斷,若條件還成立,則繼續重複上述循環,當條件不成立時則跳出當下for循環。
while循環當滿足條件時進入循環,進入循環后,當條件不滿足時,執行完循環體內全部語句后再跳出,而不是立即跳出循環。
三、語法不同
for循環的語法為:for (變數 = 開始值;變數 <= 結束值;變數 = 變數 + 步進值) {需執行的代碼 }。
while循環的語法為:while (<條件>) {需執行的代碼 }。
  • 目錄