1. 程式人生 > >【C++】for,while,continue,break

【C++】for,while,continue,break

for

形式:

for (expr1; expr2; expr3)

    statement;

規則:

(1)初始化,執行expr1(只執行一次);

(2)條件判斷:如果expr2為真,則執行(3),否則退出;

(3)執行statement:迴圈體;

(4)執行expr3;

(5)回到(2),進行下一輪。

#include "stdio.h"

int main()
{
    int a[100];
    for(int i=0; i<100; i++)
    {
        a[i] = i;
        printf("%d \n", a[i]);
    }


    return 0;
}

結果為:

特殊情況:

第一種情況:

for(int i = 0; ; i++) //判斷條件為空,表示一直滿足條件
{
    if(i>=100) break;//設定退出條件
    a[i] = i+1;
}

第二種情況:

for(int i = 0; i<100; )
{
    a[i] = i+1;
    i++;
}

continue

跳出本次迴圈,直接跳到下一次迴圈操作。

下面程式功能:列印10以內的奇數。

#include "stdio.h"

int main()
{
    int a[100];
    for(int i=0; i<10; i++)
    {
        a[i] = i;
        if(i%2 == 0)
        {
            continue;
        }
        printf("%d \n", a[i]);

    }


    return 0;
}

break

跳出該迴圈,執行該迴圈之後的程式碼。

下面程式功能:大於2後直接跳出迴圈。

#include "stdio.h"

int main()
{
    int a[100];
    for(int i=0; i<10; i++)
    {
        if(i > 2)
        {
            break;
        }
        a[i] = i;
        printf("%d \n", a[i]);
    }

    printf("I am \"break\".");

    return 0;
}

結果為

while

形式:

while(expr)
{
    statement;
}

規則:

(1)判斷:expr為假時,退出迴圈;否則執行(2);

(2)執行語句statement(迴圈體);

(3)回到(1),進行下一輪。

程式功能:列印1到100的數。

#include "stdio.h"

int main()
{
    char buf[100];
    int i = 0;
    while(i < 100)
    {
        buf[i] = i + 1;
        printf("%d \n", buf[i]);
        i++;
    }

    return 0;
}

do while

形式:

do
{
    statement;
}while(expr);

規則:

(1)執行do裡面的迴圈體;

(2)判斷expr是否為真,為真是繼續下一輪,為假時跳出該迴圈體。