C goto 語句

C 迴圈 C 迴圈

C 語言中的 goto 語句允許把控制無條件轉移到同一函數內的被標記的語句。

注意:在任何編程語言中,都不建議使用 goto 語句。因為它使得程式的控制流難以跟蹤,使程式難以理解和難以修改。任何使用 goto 語句的程式可以改寫成不需要使用 goto 語句的寫法。

語法

C 語言中 goto 語句的語法:

goto label;
..
.
label: statement;

在這裏,label 可以是任何除 C 關鍵字以外的純文本,它可以設置在 C 程式中 goto 語句的前面或者後面。

流程圖

C goto 語句

實例

實例

#include <stdio.h>
 
int main ()
{
   /* 局部變數定義 */
   int a = 10;

   /* do 迴圈執行 */
   LOOP:do
   {
      if( a == 15)
      {
         /* 跳過迭代 */
         a = a + 1;
         goto LOOP;
      }
      printf("a 的值: %d\n", a);
      a++;
     
   }while( a < 20 );
 
   return 0;
}

當上面的代碼被編譯和執行時,它會產生下列結果:

a 的值: 10
a 的值: 11
a 的值: 12
a 的值: 13
a 的值: 14
a 的值: 16
a 的值: 17
a 的值: 18
a 的值: 19

C 迴圈 C 迴圈