c语言中switch的用法是:

功能:switch语句是多分支选择语句.用来实现多分支选择结构.if语句只有两个分支可供选择,而实际问题中常常要用到多分支的选择.例如,学生成绩分类(90为"A"等,80-89分为'B'等,70-90分为'C'等......).当然这些都可以用嵌套的if语句来外理,但如果分支较多,则嵌套的if语句层数多,程序沉余长而且可读性降低.C语言提供switch语句直接外理多分支选择,它相当于PASCAL语言中的CASE语句.

形式:switch(表达式)

{

case 常量表达式 1:语句 1

case 常量表达式 2:语句 2

.

.

.

case 常量表达式 n:语句 n

default:语句 n 1

}

例如,要求按照考试成绩的等级打印出百分制分数段,可以用switch语句实现:

switch(grade)

{

case 'A':printf("85-100\n");

case 'B':printf("70-84\n");

case 'C':printf("60-69\n");

case 'D':printf("<60\n");

default:printf("error\n");

}

说明:

(1) switch后面括弧内的"表达式",ANSI标准允许它为任何类型.

(2) 当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的匹配的,就执行default后面的语句.

(3) 每一个case的常量表达式的值必须互不相同,否则就会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案).

(4) 各个case各default的出现次序不影响执行结果。例如,可以先出现"default: ...",再出现"case 'D': ...",然后是"case 'A': ...".

(5) 执行完一个case后面的语句后,流程控制转移到下一个case继续执行."case常量表达式"只是起语句标号作用,并不是在该处进行条件判断.在执行swith语句时,根据switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断.例如,上面的例子中,若grade的值等于'A',则将连续输出:

85-100

70-84

60-69

<60

error

因此,应该在执行一个case分支后,使流程跳出switch结构,即终止switch语句的执行.

可以用一个break语句来达到此目的.将上面的switch结构改写如下:

switch(grade)

{

case 'A':printf("85-100\n"); break;

case 'B':printf("70-84\n"); break;

case 'C':printf("60-69\n"); break;

case 'D':printf("<60\n br="" style="margin: 0px; padding: 0px; font-family: " helvetica="" pingfang="" font-size:="" white-space:="" background-color:="" case="" :="">60\n");break;

.

.

grade的值为'A','B'或'C'时都执行同一组语句.

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

c语言中switch的用法是什么?相关推荐

  1. c语言中switch扑克牌花色,c语言中switch的用法

    c语言中switch的用法 c语言中switch的用法的用法如下:C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为:switch(表达式){case 常量表达式1: 语句1;cas ...

  2. C语言中switch的用法

    switch 是一种选择结构的语句,用来代替简单的.拥有多个分枝的 if else 语句,基本格式如下: switch(表达式){ case 整型数值1: 语句 1; break; case 整型数值 ...

  3. c语言中point的用法_关于C语言Switch语句,先学这些技巧够不够?

    一.C语言中switch的用法 1.switch后面括弧内的[表达式],ANSI标准允许它为任何类型: 2.当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,否则,就 ...

  4. Go 语言中 switch 类型断言用法

    Author mogd 2022-05-09 Update mogd 2022-05-09 Adage Don't live in the past. 目录 Go 语言中 switch 类型断言的用法 ...

  5. sql 语言中 when case 用法

    sql语言中有没有相似C语言中的switch case的语句?? 没有,用case when 来取代就行了. 比如,以下的语句显示中文年月 select getdate() as 日期,case mo ...

  6. C语言中typeof作用,浅析C语言中typeof关键字用法

    浅析C语言中typeof关键字用法 前言 C语言中 typeof 关键字是用来定义变量数据类型的.在linux内核源代码中广泛使用. 下面是Linux内核源代码中一个关于typeof实例: #defi ...

  7. c语言中getche的用法,c语言中getch的用法

    [www.hywsbj.com--图表展板] getch()函数是无回显的从控制台取得一个字符.以利用getch()函数让程序调试运行结束后等待编程者按下键盘才返回编辑界面,即任意键继续效果.下面小编 ...

  8. php indexof的用法,c语言中indexof的用法有哪些

    c语言中indexof的用法有哪些 index在互联网上表示网站的默认主页.一般为 index.html index.htmindex.aspindex.php:另外的默认主页也多用default.h ...

  9. c语言中size of 用法,C语言中sizeof()的用法

    要参加软件研发的笔试(C/C++)几乎都会涉及到sizeof()的用法,我昨天也遇到了,有的也会,但是真正sizeof()的核心还是没有领会,今天上网,无聊中就看到了详细的sizeof()的阐述,现在 ...

最新文章

  1. oracle sql 获取本季度所有月份,上季度所有月份
  2. 乐高小颗粒履带机器人_玩转乐高大颗粒积木(四十二)——乐高不倒翁、轮式是挖掘机、大颗粒皮筋车...
  3. 不会几个框架,都不好意思说搞过前端: Vue.js - 60分钟快速入门
  4. yarn vite vue3.x
  5. css label 居中布局_用好这20个css技巧快速提升你的CSS技能
  6. 摄像机旋转约束问题及解决
  7. python在文件中写入字典_python初学--文件操作、字典
  8. x86_64 Linux 运行时栈的字节对齐
  9. 基于QT实现的数独游戏DPLL的SAT求解器设计
  10. Linux使用PulseAudio设置音频card的默认profile
  11. 《计算机网络》day01-网络的诞生和发展
  12. 烤箱做披萨的做法 教你做火腿肠披萨
  13. 【考研英语语法】强调结构
  14. 传奇服务器需要满足什么条件
  15. 洞悉物联网发展1000问之什么物联网技术会颠覆创新呢?
  16. 中国剩余定理(CRT)和扩展中国剩余定理(EXCRT)
  17. 2018长三角数据智能合作(上海)峰会
  18. 基于python的证件照_python3基于OpenCV实现证件照背景替换
  19. 前向传播与反向传播的理解
  20. Android的UI卡顿

热门文章

  1. redis简单队列java_使用Redis的简单消息队列
  2. 什么是JAX-RS注释? (第3部分)
  3. stringutils_番石榴分配器vs StringUtils
  4. visualvm远程jvm_VisualVM:通过SSH监视远程JVM(是否为JMX)
  5. WildFly 8的Camel子系统集成了Java EE –入门
  6. Java EE 7 / JAX-RS 2.0:具有自定义HTTP标头的简单REST API身份验证和授权
  7. 具有Spring Boot和Java配置的Spring Batch教程
  8. Hibernate隐藏的宝石:pooled-lo优化器
  9. 使用外星人进行测试:如何使用Arquillian测试JPA类型转换器
  10. Storm Trident拓扑中的错误处理