while與do while 區別 for循環的簡介及break和continue的區別
do while 循環和while循環的區別
1、do while循環是先執行循環體,然後判斷循環條件,如果為真,則執行下一步循環,否則終止循環;
while循環是先判斷循環條件,如果條件為真則執行循環體;
2、do while循環條件後面必須有一個分號,這個分號表明循環結束。
1.for循環
for循環是更加簡潔的循環語句,大部分情況下,for循環可以代替while循環、do-while循環。
for循環的格式為:
for( 初始語句 ; 執行條件 ; 增量 )
{
循環體
}
執行順序:1、初始語句 2、執行條件是否符合? 3、循環體 4、增加增量
初始化語句只在循環開始前執行一次,每次執行循環體時要先判斷是否符合條件,如果循環條件還會true,則執行循環體,在執行叠代語句。
所以對於for循環,循環條件總比循環體多執行一次。
註意:for循環的循環體和叠代語句不在一起(while和do-while是在一起的)所以如果使用continue來結束本次循
環,叠代語句還有繼續運行,而while和do-while的叠代部分是不運行的。
來個例子:輸入一個數n(n>1),輸出n!的值。n!(n的階層)=1*2*3*……*n
- #include<stdio.h>
- void main()
- {
- long num=1;
- int n,i;
- printf("請輸入n:");
- scanf("%d",&n);
- for(i=1;i<=n;i++)
- num=num*i;
- printf("%d的階層是%d\n",n,num);
- }
2.break和continue的區別和作用
break和continue都是用來控制循環結構的,主要是停止循環。
1.break
有時候我們想在某種條件出現的時候終止循環而不是等到循環條件為false才終止。
這是我們可以使用break來完成。break用於完全結束一個循環,跳出循環體執行循環後面的語句。
2.continue
continue和break有點類似,區別在於continue只是終止本次循環,接著還執行後面的循環,break則完全終止循環。
可以理解為continue是跳過當次循環中剩下的語句,執行下一次循環。
例子:
- nclude<stdio.h>
- void main()
- {
- int sum,i;
- sum=0;
- for(i=1;i<=100;i++)
- {
- sum=sum+i;
- if(i==2)
- {
- printf("執行continue");
- continue;
- }
- if(i==4)
- {
- printf("執行break");
- break;
- }
- printf("sum=%d",sum);
- }
- printf("循環結束");
- }
這個的運行結果為: sum=1;
執行continue;
sum=6;
執行break 循環結束
運行結束。
while與do while 區別 for循環的簡介及break和continue的區別