switch 是多分支选择语句

它的用法跟if语句不太一样,我们先来看一下它的基本代码框架

switch (A)				//	A代表着想要选择判断的变量
{
  case # : 语句; 			//# 代表变量A的值  
                break;		//break表示结束switch选择		
  case # : 语句;
    						break;
   default : 语句;	//default 当以上case 后面 # 都不是 A的值的时候 默认执行default后面的语句
}

我们举一个例子:

Jun冕被老师叫去帮忙写一个小程序来进行考试分数等级的转换

90 - 100 A

80 - 90 B

70 - 80 C

60 - 70 D

小于60 E

#include<stdio.h>
int main()
{
	int n;
	scanf("%d", &n);
  printf("请输入分数\n");
	switch(n/10)
	{
		case 10: 
		case  9: printf("A\n");
				 break;
		case  8: printf("B\n");
				 break;
		case  7: printf("C\n");
				 break;  
		case  6: printf("D\n");
				 break; 
		case  5:
		case  4:
		case  3:
		case  2:
		case  1:
		case  0: printf("E\n");
				 break;
		default: printf("Error\n");
	} 
	return 0;
 }

switch语句怎么用(c语言中switch的用法)(1)

下面我们就这个例子来讲解运行switch的注意事项

1.switch是顺序执行语句,如果不遇到break会一直执行下去直到默认的default结束

下面来示范一下不加break的代码运行结果

#include<stdio.h>
int main()
{
	int n;
	scanf("%d", &n);
  printf("请输入分数\n");
	switch(n/10)
	{
		case 10: 
		case  9: printf("A\n");
		case  8: printf("B\n");
		case  7: printf("C\n");
		case  6: printf("D\n");
		case  5:
		case  4:
		case  3:
		case  2:
		case  1:
		case  0: printf("E\n");
		default: printf("Error\n");
	} 
	return 0;
 }

switch语句怎么用(c语言中switch的用法)(2)

我们发现当我们输入90的时候下面每一个分枝结果都输出的一遍

这就是不加break后,不能有效地筛选自己想要的结果

2.switch(A) A的数据类型只能说整型 字符型 枚举型

当时浮点型数据的时候程序就会报错

这就是switch大概需要注意的事项了 感谢大家的支持