switch语句

131 阅读1分钟

switch语句是一种多分支选择结构,用于根据表达式的值执行不同的代码块。它常用于需要对某个变量进行多条件判断的场景。

switch无法表示区间 只能完全相等 ,switch语句可以和if语句一起使用

case:穿透 , break:跳出 , default:默认值

流程:按顺序依次运行switch,case,直到运行至break为止,default是默认值输入错误时才运行

例子:

int score = 80;
	
switch(score){
    case 60:
        printf("及格");
        break;
    case 80:
        printf("高分");
        break;
    case 100:
        printf("满分");
        break;
    default:
        printf("不在处理范围内");
        break;
    }

运行结果:(如果输入除60,80,100以外的数字则会输出“不在处理范围内”)

屏幕截图 2025-11-06 200127.png

最后出一题: 输入年月份打印出每个月的天数,判断2月份是否为闰年,是29天还是28天。

代码如下:

int a = 0;
printf("请输入年份:");
scanf("%d", &a);
	
int b = 0;
printf("请输入月份:");
scanf("%d", &b); 


switch(b){
	case 1:	
	case 3:
	case 5:
	case 7:
	case 8:
	case 10:
	case 12:
		printf("31天");
		break;
	case 2:
		if ((a % 4 == 0 && a % 100 != 0 ) || (a % 400 == 0))	
			printf("29天");
		else
			printf("28天");
		break;
	case 4:
	case 6:
	case 9:
	case 11: 
		printf("30天");
		break;
	default:
		printf("输入有误");
		break;
}

演示:

屏幕截图 2025-11-06 204606.png