if 2.0版本,更快,更简便!---swicth语句

103 阅读2分钟

switch语句

switch语句是一种常用的选择结构语句,与if条件语句不同的是,他针对某个表达式的值做出判断,从而决定执行哪一段代码。

在switch语句中,switch关键字后面有一个表达式,case关键字后面有目标值,当表达式的值与某个目标值匹配时,会执行相应case后的语句。

switch语句的基本语法格式:

switch(表达式)
{
    case目标值1:
        执行语句1;
        break;
    case目标值2:
        执行语句2;
        break;
    ...
    case目标值n:
        执行语句n;
        break;
    default:
        执行语句n+1;
        break;

注意:

1.case的值要与表达式的值完全一样,才是匹配成功。

2.break的作用:跳出。

3.default是默认值。

4.case穿透:有多个case值匹配成功之后的逻辑是一样的,则可以把它们写在一起。

switch case default的执行流程:

  1. 按照代码的书写顺序,依次比较case后边的值;如果匹配成功,就执行对应的代码,直到遇到break为止。
  2. 所有的case都不匹配,则执行default。

示例代码如下:

#include <stdio.h>
int main(){
	
	int day = 1;
	printf("输入1-7的数字,获取我的工作日历");
	scanf("%d",&day);
	switch (day){
		case 1:
		case 2:
		case 3:
		case 5:
			printf("上6节课");
			break;
		case 4:
			printf("上3节课");
			break;	
		case 6:
			printf("吃饭,睡觉,上厕所");
			break;
		case 7:
			printf("吃饭,睡觉,上厕所");
			break;				
		default:
			printf("输入有误,没有这个日历");
			break;	 
	} 
}
#include <stdio.h>

int main18(){
	// printf("switch");
	// 考试分数
	int score = 61;
	
	// case 的值要与表达式的值完全一样,才是匹配成功! 
    // if(score >= 60 && score <= 70) 
	switch(score){
		case 60:
			printf("额外做1张试卷");
			break;
		case 61:
			printf("额外做1张试卷");
			break;
		case 70:
			printf("额外做半张试卷");
			break;	
		case 90:
			printf("出去玩");
			break;	
		default:
			printf("你考的分数不在处理范围");
			break;	 
	} 
}