C语言switch语句实例

引导语:switch 语句用于基于不同的条件来执行不同的动作。以下是百分网小编分享给大家的C语言switch语句实例,欢迎阅读学习!

C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为:

switch(表达式){

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

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

case 常量表达式n:语句n;

default: 语句n+1;

}

其语义是:计算表达式的值。并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的.常量表达式均不相同时,则执行default后的语句。

【例1】

#include

int main(void){

int a;

printf("input integer number: ");

scanf("%d",&a);

switch (a){

case 1:printf("Monday\n");

case 2:printf("Tuesday\n");

case 3:printf("Wednesday\n");

case 4:printf("Thursday\n");

case 5:printf("Friday\n");

case 6:printf("Saturday\n");

case 7:printf("Sunday\n");

default:printf("error\n");

}

return 0;

}

本程序是要求输入一个数字,输出一个英文单词。但是当输入3之后,却执行了case3以及以后的所有语句,输出了Wednesday 及以后的所有单词。这当然是不希望的。为什么会出现这种情况呢?这恰恰反应了switch语句的一个特点。在switch语句中,“case 常量表达式”只相当于一个语句标号, 表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句,所以出现了继续执行所有后面case语句的情况。 这是与前面介绍的if语句完全不同的,应特别注意。

为了避免上述情况,C语言还提供了一种break语句,专用于跳出switch语句,break 语句只有关键字break,没有参数。修改例题的程序,在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。

【例2】

#include

int main(void){

int a;

printf("input integer number: ");

scanf("%d",&a);

switch (a){

case 1:printf("Monday\n"); break;

case 2:printf("Tuesday\n"); break;

case 3:printf("Wednesday\n"); break;

case 4:printf("Thursday\n"); break;

case 5:printf("Friday\n"); break;

case 6:printf("Saturday\n"); break;

case 7:printf("Sunday\n"); break;

default:printf("error\n");

}

return 0;

}

在使用switch语句时还应注意以下几点:

在case后的各常量表达式的值不能相同,否则会出现错误。

在case后,允许有多个语句,可以不用{}括起来。

各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

default子句可以省略不用。

【C语言switch语句实例】相关文章:

c语言 switch案例,C语言switch语句实例相关推荐

  1. c语言 switch案例,C语言程序设计 2. switch语句的运用 案例 switch条件语句.docx

    C语言程序设计补充案例 C语言程序设计 案例 switch条件语句 一.案例描述 考核知识点 名称:switch条件语句 练习目标 了解switch语句的执行流程 掌握switch语句的使用方法及使用 ...

  2. 生活中c语言排序案例,C语言之数字排序-基于冒泡排序法的一些案例(对未知数量的数字进行排序)...

    C语言之数字排序 在学习C语言的时候遇到了几个比较基础的排序问题,又结合了之前的处理方法.觉得在这个需要再系统地进行复习一下. 当我们在初学C语言的时候,我们都会结合三个数字的排序来理解计算机处理问题 ...

  3. <C语言>初识C语言(一)

    文章目录 初识C语言(一) 什么是C语言 ? 计算机语言的发展 第一个程序 数据类型 进制 换算单位 数据类型长度 变量和常量 变量 变量定义 变量命名 变量分类 变量使用 变量的作用域和生命周期 字 ...

  4. c#语言swith的用法,C# switch 语句 | Microsoft Docs

    switch(C# 参考) 04/09/2019 本文内容 本文介绍 switch 语句. 有关 switch 表达式(在 C# 8.0 中引入)的信息,请参阅 表达式和运算符部分中有关 switch ...

  5. C语言 | C语言中的switch语句以及循环语句(入门版本)

    ================================================ 博主github:https://github.com/MichaelBeechan 博主CSDN:h ...

  6. c语言switch判断字母,判断switch 语句 - C语言教程

    C switch 语句 一个 switch 语句允许测试一个变量等于多个值时的情况.每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查. 语法 C 语言中 switch ...

  7. c#语言switch+case用法,C# switch case语句

    C# switch case 语句也是条件语句的一种,与上一节介绍的<C# if else语句>是类似的,但在判断条件的选择上会有一些局限性. 具体的语法形式如下. switch(表达式) ...

  8. switch if c语言效率,switch与ifelse的效率问题

    switch...case与if...else的根本区别在于,switch...case会生成一个跳转表来指示实际的case分支的地址,而这个跳转表的索引号与switch变量的值是相等的.从而,swi ...

  9. switch最大选项数目_随时随地学习C语言之3—if和switch哪个效率高?

    之前学习C语言的时候,我经常有一个疑问,既然有if-else if-else结构的多分支选择语句,C语言为何还要制定switch这种多分支选择语句呢?直到两年前在分析ARM平台C语言反汇编代码的时候, ...

最新文章

  1. 清华大学朱文武团队夺冠AAAI 2021国际深度元学习挑战赛
  2. opencv进阶学习笔记13:图像形态学操作大全(膨胀,腐蚀,开闭,黑帽,顶帽,梯度)python版
  3. What is Proguard?
  4. 利用 Python 进行数据分析(Python 数据分析)· 第 2 版
  5. HTML 5适合小公司,适合在大平台上做内容
  6. SQL FILESTREAM和SQL Server全文搜索
  7. 3.12 - Tuples in Python
  8. WordPress优化攻略:全面提升WP网站速度仅需3个加速方法和1个插件
  9. windows”出现身份验证错误,要求的函数不正确“的解决方法
  10. Rainmeter天气不能更新、win地图不能检测定位
  11. MP3/4维修全攻略
  12. SCTP客户/服务器程序
  13. Unity 编辑器扩展 子物体材质替换
  14. 虚拟机VMware安装windows7 64位操作系统(图文版详解版)
  15. 科学素养题(2022年2月-2022年10月)
  16. 软件测试之App测试-硬件环境测试
  17. 一文教你学会使用GitHub!(附视频)
  18. 【思维】Hzy's Rabbit Stick
  19. js 获取所有class相同的元素对象(简单实用)
  20. MES如何对车间设备进行调度和控制实现智能化生产(一)

热门文章

  1. 做一个展示型企业网站要多少钱
  2. 请求示例curl获取电商商品详情数据API接口,批量采集
  3. web前端就业怎么样
  4. 电源:buck/boost/buck-boost相关计算公式
  5. Shelve Silently - 静默搁置 (Git 功能)
  6. 多张图片合并一张图片,在中间添加文字
  7. 计算机网络行业规范的主要内容,计算机网络专业论文
  8. Splay树各操作--数组
  9. Win10电脑无法复制粘贴怎么办【系统天地】
  10. 异构计算, GPU和框架选型指南