首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C 語言 switch-case 穿透與 continue 流程分析調試

     編輯:程式設計綜合問答

代碼修正後邏輯:

for (k=1; (c=s[k]) != '\0'; k++) {
    switch(c) {
        case 'A': putchar('%'); continue;  // 輸出% 跳過本輪後續、k++ 進入下輪
        case 'B': ++k; break;              // 額外跳過一個字符、break 跳出 switch
        default: putchar('*');             // 無 break,穿透執行 case 'C'
        case 'C': putchar('&'); continue;  // 輸出& 跳過本輪後續
    }
    putchar('#'); // 只有 case 'B' 會執行到這裡
}

輸入 "ABCCDA"(索引 1 起)輸出序列可手動推演,關鍵理解 continue 直接進入 for 迭代下一輪,break 僅跳出 switch。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved