溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C++控制結(jié)構(gòu)是什么意的

發(fā)布時(shí)間:2022-03-10 12:29:55 來(lái)源:億速云 閱讀:112 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要介紹了C++控制結(jié)構(gòu)是什么意的,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

    C++控制結(jié)構(gòu)是什么意的

    C++的控制結(jié)構(gòu)和其它編程語(yǔ)言類似,共包含以下三種:

    • 順序結(jié)構(gòu)

    • 選擇結(jié)構(gòu)

    • 循環(huán)結(jié)構(gòu)

    不知道是否有論文證明過(guò),上述三種結(jié)構(gòu)是否實(shí)現(xiàn)所有的邏輯。

    1、順序結(jié)構(gòu)

    即表達(dá)式按照上下順序執(zhí)行,比如下面的代碼:

    printf("Hello");
    printf("\n");
    printf("World");

    程序會(huì)依次輸出“Hello World”。

    2、選擇結(jié)構(gòu)

    選擇結(jié)構(gòu)可以使用if語(yǔ)句或者switch語(yǔ)句實(shí)現(xiàn),下面分別記錄。

    2.1、 if語(yǔ)句

    采用if實(shí)現(xiàn)的選擇結(jié)構(gòu)含有3種情況:

    • 單層選擇if-else

    • 嵌套判斷if-else

    • 多重判斷if-else if

    單層選擇的選擇采用if-else實(shí)現(xiàn),其語(yǔ)法如下:

    if (表達(dá)式) 語(yǔ)句1
    else 語(yǔ)句2

    比如判斷x是否大于10,若是則輸出yes,否則輸出no:

    int x = 100;
    if (x>10)
        {
            printf("yes");
        }
    else 
        {
            printf("no"); 
        }

    此外,if-else內(nèi)部可以嵌套新的判斷,比如判斷if x>10以后可以繼續(xù)判斷x和20的關(guān)系,else 后可以判斷x繼續(xù)判斷x和5的關(guān)系:

    int x = 100;
        if (x>10)
        {
            if (x>20)
            {
                printf("x>20");
            }
        }
        else 
        {
            if (x<5)
            {
                printf("x<5");
            }
        }

    除了上述兩種方式,還可以使用if-else if對(duì)某種條件進(jìn)行多次判斷,當(dāng)前面的判斷不成立時(shí)繼續(xù)判斷后面:

    if (x>50)
        {
            printf("x>50");
        }
    else if (x>30)
        {
          printf("x>30");
        }
    else
        {
            printf("all no");
        }

    2.2 、switch語(yǔ)句

    當(dāng)需要判斷的條件是同一個(gè)表達(dá)式的值時(shí)可以使用switch語(yǔ)句,比如判斷x具體為什么值:

    int x = 100;
        switch (x)
        {case 10:
            {
                printf("x= 10");
                break;
            }
            case 100:
            {
                printf("x = 100");
                break;
            }
            default:
            {
                printf("unknown");
        }}

    switch語(yǔ)句使用有兩個(gè)注意事項(xiàng),第一是case中使用break才能保證后面的case不被執(zhí)行;第二是case后的表達(dá)式是必須是常量表達(dá)式,比如整型、字符型或者枚舉型。

    3、循環(huán)結(jié)構(gòu)

    C++中包含3種循環(huán)語(yǔ)句:while、do while以及for,下面分別介紹。

    3.1 、while語(yǔ)句

    while語(yǔ)句表示當(dāng)滿足某個(gè)條件時(shí),語(yǔ)句被循環(huán)執(zhí)行,一般需要在循環(huán)體內(nèi)部改變表達(dá)式的值,語(yǔ)法如下:

    while (表達(dá)式) 語(yǔ)句

    比如當(dāng)x<10時(shí)不斷在屏幕顯示“yes”,并將x進(jìn)行加1直到循環(huán)停止:

    int x = 1;
        while (x<10)
        {
            printf("yes\n");
            x ++;
        }

    3.2 do while 語(yǔ)句

    盡管do whilewhile的功能十分類似,但是C++單獨(dú)使用do while肯定是有原因的。do while的語(yǔ)法為:

    do 語(yǔ)句
    while (表達(dá)式)

    同樣采用x<10時(shí)不斷在屏幕顯示yes為例:

    int x = 1;
    do {
            printf("yes\n");
            x ++;
        }while(x<10);

    while和do while的區(qū)別是先執(zhí)行語(yǔ)句還是先判斷表達(dá)式。do while也經(jīng)常在循環(huán)體內(nèi)部改變判斷條件表達(dá)式的值,比如上述代碼中的x++一行。

    3.3 for語(yǔ)句

    在python中for經(jīng)常作為迭代功能使用,這和C++的for有些不同,

    其語(yǔ)法如下:

    for(初始語(yǔ)句;判斷條件;更新)
    {循環(huán)主體語(yǔ)句}

    執(zhí)行順序?yàn)椋?/strong>首先執(zhí)行“初始語(yǔ)句”,當(dāng)滿足“判斷條件”時(shí)就去執(zhí)行“循環(huán)主體語(yǔ)句”,否則就退出循環(huán),每次“循環(huán)主體語(yǔ)句”執(zhí)行后進(jìn)行“更新”,重復(fù)前述操作。下面展示了在x<10時(shí)不斷的在屏幕輸出No:

    for (int x=1; x<10; x++){
            printf("No\n");
        }

    感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“C++控制結(jié)構(gòu)是什么意的”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

    向AI問(wèn)一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    c++
    AI