Switch case语句代替了将变量与多个整数值进行比较的long if语句
- switch语句是多路分支语句。它提供了一种简单的方法,可以根据表达式的值将执行分派到代码的不同部分。
- Switch是一个控制语句,它允许一个值更改执行控制。
句法:
switch (n)
{
case 1: // code to be executed if n = 1;
break;
case 2: // code to be executed if n = 2;
break;
default: // code to be executed if n doesn't match any cases
}
有关开关案例声明的要点:
1.开关中提供的表达式应得出一个常数值,否则将无效。
switch的有效表达式:
// Constant expressions allowed
switch(1+2+23)
switch(1*2+3%4)
// Variable expression are allowed provided
// they are assigned with fixed values
switch(a*b+c*d)
switch(a+b+c)
2.不允许重复的案例值。
3.默认语句是可选的。即使switch case语句没有默认语句,
它会毫无问题地运行。
4. break语句用于开关内部,以终止语句序列。到达break语句后,开关终止,控制流跳至switch语句后的下一行。
5. break语句是可选的。如果省略,将继续执行下一种情况。控制流将落到随后的情况中,直到达到中断为止。
6.允许嵌套switch语句,这意味着您可以在另一个switch中包含switch语句。但是,应避免使用嵌套的switch语句,因为它会使程序更复杂且可读性更差。
流程图:
例子:
C
// Following is a simple C program
// to demonstrate syntax of switch.
#include
int main()
{
int x = 2;
switch (x)
{
case 1: printf("Choice is 1");
break;
case 2: printf("Choice is 2");
break;
case 3: printf("Choice is 3");
break;
default: printf("Choice other than 1, 2 and 3");
break;
}
return 0;
}
C++
// Following is a simple C++ program
// to demonstrate syntax of switch.
include
using namespace std;
int main() {
int x = 2;
switch (x)
{
case 1:
cout << "Choice is 1";
break;
case 2:
cout << "Choice is 2";
break;
case 3:
cout << "Choice is 3";
break;
default:
cout << "Choice other than 1, 2 and 3";
break;
}
return 0;
}
输出:
Choice is 2
时间复杂度: O(1)
辅助空间: O(1)
相关文章:
- 关于C中的Switch Case的有趣事实
- C中switch语句的case标签的数据类型应该是什么?
- 将单个数字打印为单词,而无需使用if或switch
https://youtu.be/oxoBe04P8
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。