免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
學(xué)習(xí)C++

學(xué)習(xí)C++ -> 循環(huán)語句與循環(huán)控制

 


一、循環(huán)語句
    當(dāng)程序中需要不斷的重復(fù)執(zhí)行某個(gè)動(dòng)作, 例如: 重復(fù)輸出1000行"Hello,world!", 如果自己寫一千行cout<<"Hello,world!";, 就算復(fù)制粘貼也得一會(huì)時(shí)間, 這時(shí)循環(huán)語句就能派上大用場(chǎng)了。
    
1. for循環(huán)
    for循環(huán)使用的基本形式:

    for( 初始化表達(dá)式; 條件表達(dá)式; 增量表達(dá)式 )        語句;    //循環(huán)體


    初始化是一個(gè)賦值語句, 它用來給循環(huán)控制變量賦初值; 條件表達(dá)式是一個(gè)關(guān)系表達(dá)式, 它決定什么時(shí)候退出循環(huán); 增量定義循環(huán)控制變量每循環(huán)一次后循環(huán)控制變量按什么方式變化。這三個(gè)部分之間用分號(hào)(;)分開。
    
    例如:

    int i ;    for( i = 0; i < 10; i++ )        cout<< i <<endl ;


    for循環(huán)語句首先計(jì)算初始化表達(dá)式, 即將循環(huán)控制變量i賦初始值0; 條件表達(dá)式 i < 10 ;表示當(dāng)i的值小于10的時(shí)候執(zhí)行 cout<< i <<endl ;語句, 當(dāng)大于或等于(>=)10的時(shí)候就結(jié)束循環(huán); i++是告訴for循環(huán)循環(huán)控制變量沒循環(huán)一個(gè)循環(huán)控制變量i的值增加1, 然后繼續(xù)執(zhí)行循環(huán)體中的語句, 直到i的值大于或等于10時(shí)結(jié)束循環(huán)。
    
    注意: 
        1>. 循環(huán)體中如果有多條語句需要用大括號(hào){}括起來構(gòu)成一條符合語句;
        2>. for循環(huán)中的初始化表達(dá)式、條件表達(dá)式和增量表達(dá)式可以缺省, 但分號(hào)(;)不能缺省, 例如:

        for ( ; ; )        //死循環(huán)            語句;                    for ( i = 1; ; i += 2 )    //i每次加2, 循環(huán)不停止            語句;                    for ( j = 5; ; )    //j為5, 循環(huán)不停止            語句;

        3>. for循環(huán)允許多層嵌套, 例如:

        for( ; ; )        {            for( ; ; )            {                //循環(huán)體            }
       //其他語句 }

 
        
    實(shí)例: 用for循環(huán)求1+2+...+100的和

#include<iostream>using namespace std ;int main(){    int i ;             //循環(huán)控制變量    int sum = 0 ;       //存儲(chǔ)求和的結(jié)果, 賦初始值為0    for( i = 1; i <= 100; i++ )        sum += i ;      /*1+2+...+100*/    cout<< sum <<endl ; //輸出求和的結(jié)果    return 0 ;}

 



2. while循環(huán)
    while循環(huán)使用的基本形式:

    while(判斷表達(dá)式)        循環(huán)體


    當(dāng)程序執(zhí)行到while循環(huán)時(shí)首先計(jì)算 判斷表達(dá)式 , 當(dāng)判斷表達(dá)式的值為真(不為0)時(shí)便開始執(zhí)行循環(huán)體, 當(dāng) 判斷表達(dá)式 的值為假(為0)時(shí)跳過循環(huán)體繼續(xù)執(zhí)行循環(huán)體下面的語句。
    例如:

    int i = 0 ;    while( i < 10 )    {        cout<< i << endl ;        i ++ ;    }

 
    首先為循環(huán)控制變量i賦初始值為0, 然后程序執(zhí)行到while時(shí)計(jì)算 i < 10, 此時(shí) i 的值為0, 所以 i < 10 為真, 程序開始執(zhí)行循環(huán)體中的語句 : 輸出目前 i 的值, 然后用 i ++ ; 使i的值增加1, 執(zhí)行完一次循環(huán)后再到 i < 10這里判斷值是否為真, 直到 i 的值大于或等于10時(shí)結(jié)束循環(huán)。
    
    和for循環(huán)一樣, while循環(huán)也允許多層嵌套。
    
    實(shí)例: 用for循環(huán)求1+2+...+100的和

#include<iostream>using namespace std ;int main(){    int i = 1 ;         //循環(huán)控制    int sum = 0 ;       //計(jì)算結(jié)果    while( i <= 100 )    {        sum += i ;        i ++ ;    }    cout<< sum << endl ;    return 0 ;}

 



3. do...while循環(huán)
    與while循環(huán)不同, while循環(huán)是先判斷 判斷表達(dá)式 中的值是否為真再?zèng)Q定是否執(zhí)行循環(huán)體, 而 do...while 循環(huán)是先執(zhí)行一次循環(huán)體再判斷是否繼續(xù)執(zhí)行循環(huán)體, 通過一個(gè)示例說明:

    int i = 0 ;         //循環(huán)控制    do    {        cout<< i <<endl ;    }while( i > 0) ;    //當(dāng)i>0時(shí)執(zhí)行循環(huán)

 
    在這段代碼中, 首先為循環(huán)控制變量 i 賦初始值0, 然后進(jìn)入 do...while循環(huán)體中, 執(zhí)行  cout<< i <<endl ; 這句 , 然后再判斷i是否大于0, 若i大于0則繼續(xù)循環(huán), 否則結(jié)束循環(huán), 這里的i不大于0, 所以執(zhí)行了一次循環(huán)體后便結(jié)束了循環(huán)。
    
    也就是說, 無論 是否符合do...while的執(zhí)行條件, 循環(huán)體總要執(zhí)行一次。
    
    總結(jié)一下就是: while循環(huán)線判斷循環(huán)條件再執(zhí)行循環(huán)體, do...while循環(huán)先執(zhí)行一次循環(huán)體再判斷是否繼續(xù)執(zhí)行循環(huán)體。
    
    注意: do...while中while后面的分號(hào)(;)不可省略。
    
    實(shí)例: 用do...while循環(huán)求1+2+...+100的和

#include<iostream>using namespace std ;int main(){    int i = 1 ;         //循環(huán)控制    int sum = 0 ;       //計(jì)算結(jié)果    do    {        sum += i ;        i ++ ;    }while( i <= 100 ) ;    cout<< sum <<endl ;    return 0 ;}

 



二、循環(huán)控制
1. break語句
    break語句通常用在循環(huán)語句或開關(guān)語句(switch)中。其作用是從當(dāng)前循環(huán)或當(dāng)前switch語句中跳出, 從而執(zhí)行當(dāng)前語句的下一條語句。
    
    例如在switch語句中:

    int i = 1 ;    switch( i )    {        case 0:            cout<< "0" <<endl ;        case 1:            cout<< "1" <<endl ;        case 2:            cout<< "2" <<endl ;        default:            cout<< "Others" <<endl;    }

 
    這里沒有使用break語句, 看下輸出:

12Others


    可以看到, 程序從滿足的case處將后面的語句全部輸出了, 如果我們只想得到一個(gè)結(jié)果, 而不是將入口后面的case語句全部執(zhí)行的話就需要case語句了, 可以這樣:

        case 0:            cout<< "0" <<endl ; break ;        case 1:            cout<< "1" <<endl ; break ;        case 2:            cout<< "2" <<endl ; break ;        default:            cout<< "Others" <<endl;

 
    在每個(gè)case語句后加上一個(gè)break語句, 當(dāng)執(zhí)行到滿足條件的case語句后再執(zhí)行完該case后的語句塊便退出switch語句。
    
    再舉一個(gè)break語句應(yīng)用于循環(huán)語句中的例子, 以while循環(huán)為例:

    int i = 0 ;    while( true )    {        cout<< i <<endl ;        i ++ ;        if( i > 10 )            break ;    }

    這里使用了while( true )語句, true是C++的關(guān)鍵字之一, 代表真, 也就是說如果沒有其他任何語句這就是一個(gè)死循環(huán)(永遠(yuǎn)不會(huì)停止), 這里我們還定義了一個(gè)變量i, 在循環(huán)體中使用cout<< i << ;輸出i的值, i++ ;語句是i自增1, 接下來是if語句, 條件表達(dá)式是當(dāng) i > 10時(shí)執(zhí)行if語句塊中的語句, 也就是說當(dāng)i自增到大于10時(shí)就會(huì)執(zhí)行break語句, 從而跳出while循環(huán), 這樣while( true )就不再是死循環(huán)了。

    注意:
        1>. break語句對(duì)if-else的條件語句不起作用。
        2>. 在多層循環(huán)中,一個(gè)break語句只向外跳一層。   


2. continue語句
    continue語句的作用是跳過本輪循環(huán)中剩余的語句, 而執(zhí)行下一輪循環(huán)。continue語句只用在for、while、do-while等循環(huán)體中, 常與if條件語句一起使用, 用來控制循環(huán), 但不能用來控制if語句中的剩余語句。
    
    一個(gè)實(shí)例: 輸出100以內(nèi)同時(shí)能被3整除且能同時(shí)被5整除的整數(shù)。

#include<iostream>using namespace std ;int main(){    int i;    for( i = 0; i < 100; i++ )    {        if( i % 3 != 0 || i % 5 != 0 )  //當(dāng)i不符合要求時(shí)結(jié)束本次循環(huán)            continue ;        cout<< i <<endl ;   //輸出i    }    return 0 ;}

 
    程序輸出的結(jié)果是15, 30, 45, 60, 75, 90。 從if語句中可以看出, 當(dāng)i不能整除3或5時(shí)就continue繼續(xù)下一個(gè)循環(huán), 所以cout<< i <<endl ;這句不會(huì)被每次都執(zhí)行, 只有沒有被continue時(shí)才能執(zhí)行到該輸出語句。


3. goto語句
    當(dāng)循環(huán)嵌套較深且需要全部跳出循環(huán)時(shí), 使用goto語句應(yīng)該說是個(gè)不錯(cuò)的選擇, 例如:

#include<iostream>using namespace std ;int main(){    int i, m, n;    for( i = 0; i < 100; i++ )    {        for( m = 0; m < 100; m++ )        {            for( n = 0; n < 100; n++ )            {                if( (i + m + n) == 256 )                {                    cout<<"i = "<< i <<endl;                    cout<<"m = "<< m <<endl;                    cout<<"n = "<< n <<endl;                    goto stop ;                }            }        }    }    stop: cout<<"Stop"<<endl;    return 0 ;}

    這里是使用3個(gè)for循環(huán)嵌套, 計(jì)算3個(gè)100以內(nèi)的數(shù)i, m, n相加和為256的情況, 這里我們只取一個(gè)結(jié)果, 也就是說只要出現(xiàn)第一個(gè)符合條件的i, m, n 輸出后便退出循環(huán), 如果在if語句中使用break的話只能退出當(dāng)前if語句所在的循環(huán), 而無法退出更上一層的循環(huán)。
    
    使用goto語句在循環(huán)外部定義一個(gè)表示stop, 需要退出所有循環(huán)時(shí)直接goto到循環(huán)外部, 這樣就相當(dāng)于一次跳出了3個(gè)循環(huán)。

 

--------------------

wid, 2012.11.21

 

上一篇: 學(xué)習(xí)C++ -> 選擇結(jié)構(gòu)程序設(shè)計(jì)

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【C 入門篇】for語句之初識(shí)for循環(huán)
5.1 for循環(huán)
C語言基礎(chǔ)——循環(huán)詳解!
200-285
java流程控制語句之switch和循環(huán)語句
C語言中的循環(huán)控制
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服