臭名遠揚之 goto 語句

伍悅匿匿發表於2020-12-11

C 語言自學之 goto 語句

Dome1:以下程式實現從控制檯輸出1-10,使用goto語句,實現當輸出完3之後跳出迴圈體。

#include <stdio.h>

int main()
{
    int sum = 0;
    int i;
    for(i=1; i<=10; i++)
    {
        printf("%d\n", i);
        if(i==3)            //判定 i== 3  時 執行goto 跳轉
        goto LOOP;//在這裡使用goto語句
    }
    LOOP:printf("結束for迴圈了....");  //通過goto  跳轉出迴圈,執行最後的輸出。
    return 0;
}

goto 語句標號;
    其中語句標號是一個識別符號,該識別符號一般用英文大寫並遵守識別符號命名規則,
    這個識別符號加上一個“:”一起出現在函式內某處,執行goto語句後,程式將跳轉到該標號處並執行其後的語句。
    goto語句通常不用,主要因為它將使程式層次不清,且不易讀,
    但在特定情況下,可以使用goto語句來提高程式的執行速度,所以還是少用為妙

Dome2:用goto語句和if語句構成迴圈求10以內的數之和

#include <stdio.h>
    int main()
    {
        int sum=0;
        int i=1;
        //LOOP就是一個有效的識別符號
        LOOP:if(i<=10)
        {
            sum += i;
            i++;
            //轉義到LOOP所在的位置繼續執行
           goto LOOP ;//促使程式從LOOP所在位置重新執行,形成另類迴圈。
        }
        printf("sum=%d\n",sum);
        return 0;
    }

 

相關文章