Posted on 2005-09-14 11:35
橘子 閱讀(648)
評論(0) 編輯 收藏 所屬分類:
程序開發
一、for(表達式 1;表達式 2;表達式 3)語句
它的執行過程如下:
(1)先求
表達式 1.(2)求
表達式2,若其值為真(值為非0),則執行for語句中指定的內嵌語句,然后執行下面第三步 做若為
假(值為0),則結束循環,轉到第5步.
(3)求解表達式3
(4)轉回上面第(2)步驟繼續執行;
(5)結束循環,執行for語句下面的一個語句;
二、for(循環變量賦初值;循環條件;循環變量增值)語句
如
for(i=1;i<=100;i++)sum=sum+i;
它的執行相當于
i=1;
while(i<=100){
sum=sum+i;
i++;
}
顯然,用for語句更簡單、方便。
說明:
(1)for語句的一般形式中的"表達式1"可以省略,此時應在for語句之前給循環變量賦初值.注意省略表達式1時,其后的分號不能省略.如for(;i<=100;i++){....};
(2)如果表達式2省略 即不判斷循環條件,循環無終止地循環下去,也就是認為表達式2始終為真.
例如:for(i=1;;i++){.....};
相當于
i=1;
while(1)
{sum=sum+1;
i++;
}
(3)表達式3也可以省略,但此時程序設計者應另外設法保證循環能正常結束.如:
for(i=1;i<=100;)
{sum=sum+1;
i++;
}
這個例子的循環增量沒有放在表達式三的位置 而是作為循環體的一部分 其效果是一樣的.
(4)可以省略表達式1和表達式3,只有表達式2 即只給循環條件.
如
for(;i<=100;)
{
sum=sum+i;
i++;
}
這個相當于
whlie(i<=100)
{
sum=sum+i;
i++;
}
(5)三個表達式都可以省略,如:
for(;;)語句
相當于
while(1)語句
即不設初值 不判斷條件(認為表達式2為真值)循環變量不增值,無終止的執行循環體.
(6)表達式1也可以是設置循環變量初值的賦值表達式,也可以是與循環變量無關的其他表達式.如:
for(sum=0;i<=100;i++)
{
sum=sum+i;
}
for(sum=0,i=0;i<=100;i++)
{
sum=sum+i;
}