基本工作方式:通過條件表示式判定是否執行迴圈體。
do,while,for的區別:
do先執行後判斷,迴圈體至少執行一次;
while先判斷後執行,可能一次都不執行。
for先判斷後執行,比while更簡潔
各種迴圈回顧:
(1)do——while:
格式:(先do在判斷條件,至少使用一次)
do
while(condition)
(2)while
while(condition)
(3)for
for(i=0;condition;i++)
4.分別用三個辦法實現累加從0到n的功能
考慮問題的全面性!!!!!
考慮正負問題:正數正常操作,負數輸出
(1)do-while
#include
intf1(int
n)
while(n>=0);//
注意為小括號,非大括號
}
returnret;
}
intmain()
結果:-2輸入,
發現,在do外還需要新增if語句,較為複雜
(2)while
intf1(int
n)
returnret;
}
無需插入if語句,while相對於do-while更合適
(3)for迴圈
intf1(int
n)
returnret;
}
5.break和continue的區別
1)break表示終止迴圈的執行
continu表示終止本次迴圈,進入下一次迴圈
switch能否用continue?:不可以!!只能用在迴圈語句中
2)例項分析:do與break的妙用,工程中重要作用
#include
#include
//malloc,
向系統申請分配指定
size
個位元組的記憶體空間
intfunc(int
n)
ret=1;
}while(0);//
迴圈條件為
0,表示只執行一次迴圈體!
do-while
迴圈的作用:有些
break
之後,強制執行
free
,釋放空間
free(p);//break
後進入,釋放p指標
returnret;
}
intmain()
else
getchar();
return0;
}
與下一**進行比較!!
#include
#include
//malloc,
向系統申請分配指定
size
個位元組的記憶體空間
intfunc(int
n)
ret=1;
//}while(0);//
迴圈條件為
0,表示只執行一次迴圈體!
do-while
迴圈的作用:有些
break
之後,強制執行
free
,釋放空間
printf("free p");
free(p);//break
後進入,釋放p指標
returnret;
}
intmain()
else
getchar();
return0;
}
輸入1,結果:
發現沒有printf(「free p」),沒有釋放指標空間,造成記憶體的洩露!!!
所以說:do-while是很好的防止記憶體洩露的方法。
小結:
for迴圈先進行判斷,在進行迴圈
for適用於迴圈次數固定的場景
while先進行判斷在進入迴圈體執行。
while適用於迴圈次數不固定的場合
do-while先執行後判斷,至少執行一次
do-while(0),break結構,運用於防止記憶體洩露!!!!!
C語言高階 7 迴圈語句
迴圈語句的基本工作方式 通過條件表示式判定是否執行迴圈體 條件表示式遵循if語句表示式的原則 do while for語句的區別 do語句先執行再判斷,迴圈體至少執行一次 while語句先判斷後執行,迴圈體可能不執行 for語句先判斷再執行,相比while更加簡潔。do.while的迴圈方式 do ...
C語言高階剖析 7 迴圈語句
迴圈語句通過條件表示式判定是否執行迴圈體。迴圈語句有三種,do,while,for,三種區別如下 1 do while 語句的迴圈方式 2 while 語句的迴圈方式 3 for 語句的迴圈方式 for 迴圈有初始區,i 0 就是初始區 condition 是條件 迴圈終止區指的是 i 程式示例 三...
C 語言 迴圈語句
請輸入關卡數 int a int.parse console.readline int s 0 if a 0 a 20 console.write 您輸入的關卡得分是 s if a 20 a 30 for int i 21 i a i console.write 您輸入的關卡得分是 s if a 3...