C/C++语法Switch语句

一、语法形式 

语法形式如下:

switch(整形表达式)
{
    case 整形常量表达式:
        语句;
    case 整形常量表达式:
        语句;
    case 整形常量表达式:
        语句;
}

 还有另一种语法形式:

#include <iostream>
using namespace std;
int main()
{
  int day;
  cin>>day;
  switch(day){
  	case 1:
  	case 2:
  	case 3:{
  		//输入内容 
		break;
	  }
  return 0;
}

这个形式和第一种其实没什么差别,只是case 1和case 2里面的语句块是空而已,所以这时无论你输入1,2,3,都会进入case 3的语句块执行。 

二、注意事项

1.每一个case后面都要跟一个空格然后再跟整形表达式,这是初学者很容易犯的错误,一定要注意。

2.每一条case语句后跟一个冒号,而后的语句块如果大于等于两条,可以用花括号。

3.switch后面只能跟整形表达式,不能跟其他类型的内容或变量,因此他的用法会有一定限制,大家在使用Switch语句时不无脑使用。

4.每一个case语句进去后,出来需要break语句,否则程序可能会出现一些奇奇怪怪的问题

三、举例

 下面这串代码是正确的,作用是输出一个数字,输出星期几,在后面再给大家看一下如果没有在乎上面“注意事项”里面第四条的话会造成什么结果。

#include <iostream>
using namespace std;
int main()
{
  	int day;
  	cin>>day;
  	switch(day){
  	case 1:{
  		printf("星期一");
		break;
	  	}
	case 2:{
  		printf("星期二");
		break;
	  	}
	case 3:{
  		printf("星期三");
		break;
	  	}
	case 4:{
  		printf("星期四");
		break;
	  	}
	case 5:{
  		printf("星期五");
		break;
	  	}
	case 6:{
  		printf("星期六");
		break;
	  	}
	case 7:{
  		printf("星期七");
		break;
	  	}
  }
  return 0;
}

 给大家看没有break语句的话会有什么结果,先看代码:

#include <iostream>
using namespace std;
int main()
{
  int day;
  cin>>day;
  switch(day){
  	case 1:
  		printf("星期一");
  	case 2:
  		printf("星期二");
  	case 3:
  		printf("星期三");
  	case 4:
  		printf("星期四");
	case 5:
  		printf("星期五");
  	case 6:
  		printf("星期六");
  	case 7:
  		printf("星期七");
  }
  return 0;
}

 输入输出结果:

5
星期五星期六星期七

 以上就是我对该部分内容的理解,希望对你有所帮助,可以私信交流,共同进步。

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
switch语句是一种在编程语言中常见的条件语句。它可以根据一个表达式的值,选择执行不同的代码块。在C语言中,switch语句语法形式有多种。一种常见的形式是使用case关键字,比如在菜鸟教程的C语言教程中给出的例子。另一种形式是使用default关键字,它可以用来处理除了case中指定的值以外的情况。在switch语句中,可以根据需要使用多个case来匹配不同的条件,也可以使用break语句来跳出switch语句。另外,switch语句还可以嵌套在其他语句中,比如在示例中所示的嵌套在main函数中。总的来说,switch语句在C语言中具有很广泛的应用,可以根据不同的条件选择执行不同的代码块。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [C语言/C++【switch语句详解(用法、规则、流程图、实例)】](https://blog.csdn.net/weixin_44949135/article/details/115174682)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [C/C++语法Switch语句](https://blog.csdn.net/qq_63699129/article/details/128060755)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值