Instead of writing many if..else
statements, you can use the switch
statement.
The switch
statement selects one of many code blocks to be executed:
switch(
expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
This is how it works:
switch
expression is evaluated oncecase
break
statement breaks out of the switch block and stops the executiondefault
statement is optional, and specifies some code to run if there is no case matchThe example below uses the weekday number to calculate the weekday name:
int day = 4;
switch (day) {
case 1:
printf("Monday");
break;
case 2:
printf("Tuesday");
break;
case 3:
printf("Wednesday");
break;
case 4:
printf("Thursday");
break;
case 5:
printf("Friday");
break;
case 6:
printf("Saturday");
break;
case 7:
printf("Sunday");
break;
}
// Outputs "Thursday" (day 4)
Try it Yourself »
When C reaches a break
keyword, it breaks out of the switch block.
This will stop the execution of more code and case testing inside the block.
When a match is found, and the job is done, it's time for a break. There is no need for more testing.
A break can save a lot of execution time because it "ignores" the execution of all the rest of the code in the switch block.
The default
keyword specifies some code to run if there is no case match:
int day = 4;
switch (day) {
case 6:
printf("Today is Saturday");
break;
case 7:
printf("Today is Sunday");
break;
default:
printf("Looking forward to the Weekend");
}
// Outputs "Looking forward to the Weekend"
Try it Yourself »
Note: The default keyword must be used as the last statement in the switch, and it does not need a break.
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!