switch (expression) {
case constant1:
statements1;
break;
case constant2:
statements2;
break;
...
default:
default_statements;
}
expression 必須為整數或字元型別。依序比較 case 標籤,相符則執行該區塊,遇 break 跳出 switch。無 break 會「貫穿」執行下一個 case。default 處理所有不符合的情況。
case 標籤必須為常數運算式(整數/字元)case 或 defaultcase 可包含多條語句,無需大括號int test;
for (test = 0; test <= 10; test++) {
switch (test) {
case 1: case 2: case 3:
printf("%d\n", test);
break;
default:
puts("Error");
break;
}
}
char c;
while (c != 27) { // ESC 結束
c = getch();
switch (c) {
case 'A': case 'B':
putchar(c);
break;
default:
puts("Error");
break;
}
}
展示選單驅動、按鍵處理的典型應用。