1.1 while循環(huán)語句格式?
基本格式:
while (條件判斷語句) {
? ? 循環(huán)體語句蔗彤;
}
完整格式:
初始化語句;
while(條件判斷語句) {
? ? 循環(huán)體語句疯兼;
? ? 條件控制語句然遏;
}
執(zhí)行流程:
① 執(zhí)行初始化語句
② 執(zhí)行條件判斷語句,看其結(jié)果是true還是false
? ? ? ? 如果是false吧彪,循環(huán)結(jié)束
? ? ? ? 如果是true待侵,繼續(xù)執(zhí)行
③ 執(zhí)行循環(huán)體語句
④ 執(zhí)行條件控制語句
⑤ 回到②繼續(xù)
▲:while循環(huán)語句 要會轉(zhuǎn)換為 for循環(huán)語句;for循環(huán)語句 要會轉(zhuǎn)換為 while循環(huán)語句姨裸。
While循環(huán)語句 案例:珠穆朗瑪峰
需求:世界最高峰是珠穆朗瑪峰(8844.43米=8844430毫米)秧倾,假如我有一張足夠大的紙,它的厚度是0.1毫米傀缩。請問那先,我折疊多少次,可以折成珠穆朗瑪峰的高度赡艰?
分析:
①:因為要反復折疊售淡,所以要使用循環(huán),但是不知道折疊多少次慷垮,這種情況下更適合使用while循環(huán)
while( 條件判斷語句 ) { 循環(huán)體 }
②:循環(huán)的執(zhí)行過程中每次紙張折疊揖闸,紙張的厚度要加倍,因此需要先定義紙張厚度料身,在循環(huán)中使厚度加倍
double paper = 0.1;
while( 條件判斷語句 ) {?
? ? paper *=2;
?}
③:折疊的過程中當紙張厚度大于珠峰就停止了汤纸,因此繼續(xù)執(zhí)行的要求是紙張厚度小于珠峰高度
int zf = 8844430;
while( paper <= zf ) { ...... }
④:設(shè)置一個計數(shù)器,在循環(huán)中執(zhí)行累加芹血,對應折疊了多少次
int count = 0;
while ( paper <= zf ) {
? ? count++;
}
do...while循環(huán)語句
do...while循環(huán)語句格式
基本格式:
do {
? ? 循環(huán)體語句;
} while(條件判斷語句);
完整格式:
初始化語句;
do {
? ? 循環(huán)體語句;
? ? 條件控制語句;
} while(條件判斷語句);
執(zhí)行流程:
① 執(zhí)行初始化語句
② 執(zhí)行循環(huán)體語句
③ 執(zhí)行條件控制語句
④ 執(zhí)行條件判斷語句
? ? 如果是false贮泞,循環(huán)結(jié)束
? ? 如果是true楞慈,繼續(xù)執(zhí)行
⑤ 回到②繼續(xù)
三種循環(huán)的區(qū)別
●for循環(huán)和while循環(huán)先判斷條件是否成立,?然后決定是否執(zhí)行循環(huán)體(先判斷后執(zhí)行)
●do..while循環(huán)先執(zhí)行一?次循環(huán)體啃擦,?然后判斷條件是否成立抖部,是否繼續(xù)執(zhí)行循環(huán)體(先執(zhí)行后判斷)
for和while的區(qū)別:?
●條件控制語句所控制的自增變量,?因為歸屬for循環(huán)的語法結(jié)構(gòu)中,在for循環(huán)結(jié)束后,就不能再次被訪問到了
●條件控制語句所控制的自增變量,對于while循環(huán)來說不歸屬其語法結(jié)構(gòu)中,在while循環(huán)結(jié)束后议惰,該變量還可以繼續(xù)使用
死循環(huán)格式:
for(;;)?{ }
while(true)?{ }
do{?}while(true);
while的死循環(huán)格式是最常用的
命令提示符窗口中CtrI+?C可以結(jié)束死循環(huán)