switchcasebreak怎么用,switchcase没有break
switch和case怎么用
代码如下:
#include "pch.h"
#include iostream
#include functional
#include map
#include string
using namespace std;
int add(int i, int j)
{
return i + j;
}
// 使用函数调用运算符
struct divide
{
int operator()(int i, int j)
{
return i / j;
}
};
auto mod = [](int i, int j) {return i % j; };
mapstring, functionint(int, int) binops =
{
? {"+", add},? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 使用函数指针
? {"-", minusint()},? ? ? ? ? ? ? ? ? ? ? ? ?// 使用标准库函数对象
? {"*", [](int i, int j) {return i * j; }},? ? // 使用未命名的lambda表达式
? {"/", divide()},? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 使用函数调用运算符
? {"%", mod}? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// 命名了的lambda表达式
};
int main()
{
int num1, num2;
string s;
while (cin num1)
{
cin s num2;
cout num1 s num2 "=" binops[s](num1, num2) endl;
}
return 0;
}
扩展资料
Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。
直线翻译:switch语句,即“切换”语句;case即“情况”。
switch语句的语法如下(switch,case,break和default是关键字):
switch ( 变量表达式 )
{
case 常量1 :语句;break;
case 常量2 :语句;break;
case 常量3 :语句;break;
...
case 常量n:语句;break;
default :语句;break;
}
当变量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句后面的语句,并依次下去执行后面所有case语句中的语句,除非遇到break;语句跳出switch语句为止。如果常量表达式的量与所有case语句的常量都不相符,就执行default语句中的语句。
switch case的用法
执行过程:
先计算并获得switch后面小括号里的表达式或变量值,然后将计算结果顺序与每个case后的常量比较。
当二者相等时,执行个case块中的代码,当遇到break时,就跳出switch选择结构,执行switch选择结构之后的代码。
如果任何一个case之后的常量与switch后的小括号中的值相等,则执行switch尾部的default块中代码。
Switch case 语句怎么使用
switch的用法是判断case后面的表达式和switch后面的表达式是否相匹配,一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break。
Switch case 语句表达式为:
switch
{
case 常量1: 语句体1;
case 常量2: 语句体2;
case 常量3: 语句体3;
case 常量4: 语句体4;
....
default : 语句体;
}
当常量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句后面的语句,并依次下去执行后面所有case语句中的语句,除非遇到break;语句跳出switch语句为止。如果常量表达式的量与所有case语句的常量都不相符,就执行default语句中的语句并跳出switch语句。
扩展资料
switch ... ?case语句的特点:
1、把要讨论的表达式与case后面的常量进行比较,发现匹配项之后,从该位置入口,做它下面的所有语句。
2、case 后面的常量不能重复
3、可以在每一个case语句的后面加上break语句,这样就能保证只做与之相匹配的那一项。
4、break实质:在switch ...case语句里面最先遇到那一个break就从该位置结束该语句
5、可以在最后一个case的下面加上default语句表示如果找不到匹配项时,就做default对应的项。
6、default并不是一定要有,如果前面遇到break,default就不执行。如果没有遇到break,就一定会执行。
7、case后面的语句可以不执行,表示与下一个case是或的关系。
参考资料来源:百度百科——switch
单片机C语言,switch,case,break的含义,格式,用法
switch语句用于多分支选择, 其一般形式为:
switch(表达式){?
? ? case 常量表达式1: ?语句1;
? ? case 常量表达式2: ?语句2;
? ? …?
? ? case 常量表达式n: ?语句n;
? ? default: ?语句n+1;
}
其语义是:计算表达式的值。 并逐个与case后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行case后的语句,然后不再进行判断,继续执行后面所有case后的语句,直到遇到break或switch语句结束。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
break专用于跳出switch语句,break 语句只有关键字break,没有参数。
#include?stdio.h
int?main(void){
????int?a;
????printf("input?integer?number:?");
????scanf("%d",a);
????switch?(a)
????{
????????case?1:printf("Monday\n");?break;
????????case?2:printf("Tuesday\n");?break;
????????case?3:printf("Wednesday\n");?break;
????????case?4:printf("Thursday\n");?break;
????????case?5:printf("Friday\n");?break;
????????case?6:printf("Saturday\n");?break;
????????case?7:printf("Sunday\n");?break;
????????default:printf("error\n");
????}
????return?0;
}
在使用switch语句时还应注意以下几点:
在case后的各常量表达式的值不能相同,否则会出现错误。
在case后,允许有多个语句,可以不用{}括起来。
各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
default子句可以省略不用。