C语言switch语句详解

目录
  • switch 分支结构
  • 快速入门
  • 代码演示
  • switch 细节讨论
  • switch 和 if 的比较
  • 案例:
  • 总结

switch 分支结构

快速入门

案例: 请编写一个程序,该程序可以接收一个字符,比如: a,b,c,d,e,f,g a 表示星期一,b 表示星期 二 … 根据用户的输入显 示相依的信息.要求使用 switch 语句完成

代码演示

案例: 请编写一个程序,该程序可以接收一个字符,比如: a,b,c,d,e,f,g a 表示星期一,b 表示星期 二 … 根据用户的输入显 示相依的信息.要求使用 switch 语句完成

#include<stdio.h>
void main(){
	char c1 = ' ';
	printf("请输入一个字符(a,b,c,d)");
	scanf("%c", &c1); //switch //表达式: 任何有值都可以看成是一个表达式
	scanf("%c", &c1);
	switch(c1) {
	case 'a' : //'a' => 97
		printf("今天星期一, 猴子穿新衣");
		break; //退出 switch
	case 'b' :
		printf("今天星期二, 猴子当小二");
		break;
 	case 'c' :
		printf("今天星期三, 猴子爬雪山");
		break;
	case 'd' :
		printf("今天星期四, 猴子有急事");
		break;
	default : //default 是可选择,不是必须的
		printf("没有匹配到任何值~");
	}
	printf("\nswitch 结束~");
}

注意:如果switch 缺少默认值,刚好执行的时候 值匹配不上任意一个case,会发生什么?
答:若没有匹配的case值,也没有default语句 ,则跳过switch 语句体 ,什么都不做。

switch 细节讨论

1)switch 语句中的 expression 是一个常量表达式,必须是一个整型(char、short, int, long 等) 或枚举类型

2)case 子句中的值必须是常量,而不能是变量

3)default 子句是可选的,当没有匹配的 case 时,执行 default

4)break 语句用来在执行完一个 case 分支后使程序跳出 switch 语句块;

5)如果没有写 break,会执行下一个 case 语句块,直到遇到 break 或者执行到 switch 结尾, 这个现象称为穿透.

switch 和 if 的比较

1)如果判断的具体数值不多,而且符合整型 、枚举类型。虽然两个语句都可以使用,建议使用 swtich 语句。

2)其他情况:对区间判断,对结果为 真假 的判断,使用 if,if 的使用范围更广

案例:

对学生成绩大于 60 分的,输出“合格”。低于 60 分的,输出“不合格”。(注:输入的成绩不能大于 100)

#include<stdio.h>
void main() {
	double d1 = 0.0;
	printf("请输入成绩");
	scanf("%lf", &d1);
	switch( (int)(d1/60) ) {//即 switch() 括号中,可以是一个复杂表达式
	 case 0 :
	 	printf("不合格");
		 break;
	case 1:
		printf("合格");
		break;
	default :
		printf("输入成绩有误");
	}
}

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • C语言流程控制之switch语句详解

    switch语句结构 switch(表达式) { case 判断值1; 语句组1: break; case 判断值2: 语句组2: break; case 判断值3: 语句组3: break; -- case 判断值n: 语句组n: break; default: 语句组n+1: break; } 表达式是选择条件,可以是单个变量也可以是组合的表达式,其最终的结果必须是一整数值,{}内的所有内容是switch语句的主体,内含多个case分支,判断值必须是一常量,case分支根据判断值标识条件选择

  • 解析c语言switch中break语句的具体作用

    问题:break在for循环.while循环等循环流程控制中起的作用是停止执行break后面的语句,跳出本次循环,并跳出该循环控制体:在switch条件选择中,没有了循环控制,break又起什么作用呢? 解决办法:1. switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇到break语句就退出switch语句,程序流程转向开关语句的下

  • C语言switch 语句的用法详解

    C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况.例如,输入一个整数,输出该整数对应的星期几的英文表示: #include <stdio.h> int main(){ int a; printf("Input integer number:"); scanf("%d",&a); if(a==1){ printf("Monday\n&q

  • 详解C语言中条件判断语句if和switch的用法

    if 语句 用 if 语句可以构成分支结构,它根据给的条件进行判定,以决定执行哪个分支程序段. C 语言的 if 语句有三种基本形式 第一种形式: if(条件表达式) { 语句1: } if(条件表达式) { 语句1: } 这种形式运行顺序为:当条件表达式为真,执行语句1,否则,直接跳过语句1,执行后面的语句. 例子1: BOOL result = YES: if(result) { printf("result is true\n"); } BOOL result = YES: if

  • C语言入门篇--学习选择,if,switch语句以及代码块

    目录 1.什么是语句 2.选择语句(分支语句) 2.1if语句&注意事项 2.1.1语法结构 2.1.2悬空else 2.2switch语句&注意事项 2.2.1语法结构 2.2.2switch语句中的break 2.2.3switch语句中的default语句 2.2.4switch语句的嵌套 3.代码块 1.什么是语句 语句:C语言中由一个 ; 隔开的就是一条语句. 例如: int a = 10; printf("haha\n"); 10; 'A'; ; //空语句

  • C语言switch语句和if用法介绍

    目录 switch语句 switch和if的区别 1.switch语句结构示意图 2.if语句结构示意图 switch的高级(灵活)运用 switch的嵌套实现 循环及循环的两个关键字 什么是循环结构 break关键字 continue关键字 switch语句 我们先了解switch是什么,翻译过来的中文意思是开关,在C语言中是指选择不同的开关即不同的分支来完成语句.接下来讲一下switch的结构和基本使用. 一般的switch语句的结构 switch(n){ case 1: 语句1: brea

  • C语言switch语句详解

    目录 switch 分支结构 快速入门 代码演示 switch 细节讨论 switch 和 if 的比较 案例: 总结 switch 分支结构 快速入门 案例: 请编写一个程序,该程序可以接收一个字符,比如: a,b,c,d,e,f,g a 表示星期一,b 表示星期 二 - 根据用户的输入显 示相依的信息.要求使用 switch 语句完成 代码演示 案例: 请编写一个程序,该程序可以接收一个字符,比如: a,b,c,d,e,f,g a 表示星期一,b 表示星期 二 - 根据用户的输入显 示相依的

  • C语言 分支语句详解分析

    目录 分支语句的分类 1.单分支结构语法形式: 2.双分支结构 3.多分支结构 注意事项 分支语句的分类 在不同的场景,我们常常面临着选择,有时候会在爱情与面包之间选择,有时候会在尊严与生存之间选择,又或者面对琳琅满目的商品时,踌躇不定的选择.总之,选择存在于我们生活的方方面面.但是,万物皆可程序化. 分支语句我们分为三种. 单分支结构 双分支结构 多分支结构 1.单分支结构语法形式: if( 条件表达式 ) { (语句块) } 2.双分支结构 双分支结构的基本形式是: if( 条件表达式) {

  • Java语法基础之选择结构的if语句、switch语句详解

    [前言] 流程控制语句: 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能. 流程控制语句分类: 顺序结构选择结构:if语句.switch语句循环结构:while语句.for语句 一.顺序结构: 是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的. 总的来说:写在前面的

  • C语言之选择分支语句详解

    目录 1.if-else语句 1.1 例子与总结 1.2 if与else的配对问题 1.3 if-else代码编写建议 2. switch (case)语句 2.1例子和总结 2.2 switch语句其他知识点 1.if-else语句 1.1 例子与总结 例子: ①只有一个if if (1 == a) { printf("yes\n"); } ②if-else语句 if (1 == a) { printf("yes\n"); } else { printfr(&qu

  • C语言if选择结构语句详解

    目录 一.选择结构功能 二.选择结构形式 三.选择结构分类 1.单分支选择结构 2.双分支选择结构 3.多分支选择结构 四.条件表达式 总结 一.选择结构功能 根据给定的判断条件,控制程序执行流程的语句. 二.选择结构形式 单分支:根据给定条件,决定是否执行一段语句. 双分支:根据给定条件,执行两条路径中的一条. 多分支:根据给定条件,决定执行其中一条路径. 三.选择结构分类 1.单分支选择结构 ①功能 根据给定表达式决定执行操作或者跳过操作. ②单分支if语句格式 ③一般形式 if(表达式)

  • IOS Swift基础之switch用法详解

    IOS  Swift基础之switch用法详解 概述 Swift中的switch语句与Java等语言中的switch有很大的相似点,但是也有不同的地方,并且更加灵活. Swift中switch的case语句中不需要添加break Swift中需要考虑所有情况,default是必要的. case分支可以添加多个条件,用,分割 case不局限与常量,可以使使用范围 switch里可以使用元组 switch默认不需要添加break,执行一个case之后就跳出语句,如果想要继续下面的语句可以使用fall

  • PHP读书笔记整理_结构语句详解

    PHP结构语句顺序结构 顺序结构就像一条直线,按着顺序一直往下执行.我们编写的代码默认都是按照顺序结构执行的. 条件结构之if-else- 条件结构就像一个岔路口,可以向左走,也可以向右走.比如上洗手间,我们知道我们的性 别,这时候我们需要根据洗手间提供的条件,左边男洗手间,右边女洗手间,或者正好相反,其中性别就是这个条件结构的条件.再比如,现在的分数都流行使用 A.B.C来分级,假设考试成绩是93分,可以将其设置为等级A,考试成绩是87,可以将其设置为等级B,这里分数区间即为条件结构中的条件.

  • MyBatis 执行动态 SQL语句详解

    大家基本上都知道如何使用 MyBatis 执行任意 SQL,使用方法很简单,例如在一个 XXMapper.xml 中: <select id="executeSql" resultType="map"> ${_parameter} </select> 你可以如下调用: sqlSession.selectList("executeSql", "select * from sysuser where enabled

随机推荐