20.C语言 switch语句

最后更新于:2020-06-02 20:50:54

C语言中,switch语句和if/else类似,都可以作为条件分支判断,当分支判断较少的适合推荐使用if/else;当分支判断比较多的时候推荐使用switch语句,具体使用请看下文;

 

一.switch语句简介

switch语法如下:

switch (表达式)
	{

	case 常量表达式1:
		语句块1;
		break;

	case 常量表达式2:
		语句块2;
		break;

		……

	case 常量表达式m:
		语句块m;
		break;

	default:
		语句块n;
		break;
	}

使用说明如下:

1.程序执行时,首先计算表达式的值,与case后面的常量表达式值比较,若相等就执行对应部分的语句块,执行完后利用break语句跳出switch分支语句。若表达式的值与所有的case后的常量表达式均不匹配,则执行default项对应的语句n,执行后跳出switch分支语句。

2.case后面的常量表达式只能是整型、字符型或枚举型常量的一种;各case语句表达式的值各不相同,只起到一个标号作用,用于引导程序找到对应入口。

3.这里的语句块可以是一条语句,或其它复合语句。语句块可以不用花括号{}

4.各个case语句并不是程序执行的终点,通常需要执行break语句来跳出switch分支语句;若某case语句的语句块被执行后,若其后没有break语句,则顺序执行其它case语句,直到遇到break语句或后面所有case语句全部执行完,再跳出switch分支语句

5. 多个case可以共用一组执行语句块。

6.各个casedefault出现的先后次序,并不影响执行结果。

7.default语句不是必须的,但建议加上作为默认情况处理项。

8.switch语句仅做相等性检测,不能像if语句那样做关系表达式或逻辑表达式计算,进行逻辑真假判断。

 

 

二.switch语句实战

举个例子:根据数字判断今天星期几?

/************************************************************************/
/*@文件名      : switch.cpp
/*@日  期      : 2020/5/23 21:52
/*@作  者      : 猿说编程
/*@公众号      : 猿说编程
/*@博客        : www.shuopython.com
/*@描述        : C语言教程 - switch循环的使用
/************************************************************************/

#include "stdafx.h"
#include "stdio.h"
#include "windows.h"

int _tmain(int argc, _TCHAR* argv[])
{
	int i = 1;

	switch (i)
	{

	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;


	default:
		printf("输入错误啦");
		break;
	}



	system("pause");
	return 0;
}

输出结果:

星期一

当然你也可以写8if/else完成这个功能,不过这中多分支更加推荐使用通过switch完成;

 

 

 

猜你喜欢:

1.安装 Visual Studio 2015

2.安装 Visual Studio 插件 Visual Assist

3.设置 Visual Studio字体/背景/行号

4.彻底卸载 Visual Studio 2008

5.彻底卸载 Visual Studio 2013/2015

6.C语言条件判断if/else

7.C语言逻辑运算符

8.C语言三目运算符

9.C语言逗号表达式

10.C语言自加自减运算符(++i/i++)

 

转载请注明猿说编程 » C语言教程 » switch语句



技术交流、商务合作请直接联系博主扫码或搜索:猿说编程

python/C++教程

猿说编程微信公众号 扫一扫关注

 

 

赞赏

微信赞赏支付宝赞赏