循環語句和循環函數
Turbo C 2.0提供了三種基本的循環語句:for語句、while語句和do-while語句。
壹.循環聲明
(壹)、對於循環其壹般形式是:
for(& lt;initialize >;& lt條件表公式>;;& lt增量> )
聲明;
初始化總是壹個賦值語句,用來給循環控制變量賦初值;條件表達式是關系表達式,決定何時退出循環;增量定義循環控制變量在每次循環後如何變化。在這三個部分之間使用;分開。
例如:
for(I = 1;我& lt=10;i++)
聲明;
上例中給了我壹個初始值1,判斷我是否小於等於10。如果是,則執行該語句,然後將值增加1。重新判斷,直到條件為假,即i & gt10,結束循環。
註意:
(1).for循環中的語句可以是語句體,但是參與循環的語句應該用{和}括起來。
(2)初始化、條件表達式和。for循環是所有選項,即可以默認,但是;無法默認。初始化被省略,這意味著沒有初始值被分配給循環控制變量。如果省略條件表達式,將成為壹個無限循環,不做其他處理。如果增量被省略,循環控制變量將不被操作。此時,可以將修改循環控制變量的語句添加到語句體中。
(3)的。for循環可以有多層嵌套。
例如:
for(;;)聲明;
for(I = 1;;I+=2)語句;
for(j = 5;;)聲明;
這些for循環語句都是正確的。
主()
{
int i,j;
printf(I j \ n);
for(I = 0;我& lt2;i++)
for(j = 0;j & lt3;j++)
printf(%d %d\n,I,j);
}
輸出結果是:
國際j
0 0
0 1
0 2
1 0
1 1
1 2
求1+2+的和...+100帶for循環;
主()
{
int sn=0,I;
for(I = 1;我& lt=100;i++)
sn+= I;/*1+2+……+100*/
printf(%d\n,sn);
}
從程序中可以看出,使用循環語句可以大大簡化代碼。
②、while循環其壹般形式是:
While(條件)
聲明;
while循環意味著當條件為真時執行該語句。不要結束循環,直到條件為假。並繼續執行循環程序外的後續語句。
例如:
#包含stdio.h
主()
{
char c;
c = ' \ 0/*初始化c*/
而(c!='\n') /*回車結束循環*/
c = getche();/*通過播放功能從鍵盤接收字符*/
}
上面的例子中,while循環從檢查C是否為回車開始,因為事先初始化為空,所以條件為真,進入循環等待鍵盤輸入字符;壹旦輸入enter,c='\n ',條件為假,循環結束。與for循環壹樣,while循環總是檢查循環頭的條件,這意味著循環可能會在不執行任何操作的情況下退出。
註意:
(1).while循環體中也允許空語句。
例如:
while((c=getche())!= ' \ n ');
這個循環會壹直持續到您鍵入enter為止。
(2)可以有多層循環嵌套。
(3)語句可以是語句體,必須用{和}括起來。
求1+2+的和...+100通過使用while循環;
主()
{
int sn=0,I = 0;
而(++I & lt;=100)
sn+= I;/*查找1+2+...+100 */
printf(%d\n,sn);
}
(3)、do - while循環其壹般格式為:
做
{
語句塊;
}
While(條件);
這個循環和while循環的區別在於,它先執行循環中的語句,然後判斷條件是否為真,如果為真,則繼續循環;如果為假,則循環終止。因此,do-while循環必須至少執行壹次loop語句。
同樣,當有許多語句參與循環時,應該用{和}將它們括起來。
求1+2+的和...通過do - while循環+100;
主()
{
int sn=0,I = 1;
做
sn+= I;/*查找1+2+...+100 */
而(++I & lt;=100);
printf(%d\n,sn);
}
從上面三個程序可以看出,利用for、while和do - while解決同壹個問題的基本思路是相似的,但在第壹次計算時要註意初始值。