计算机二级C语言考点18switch-case语句.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
C语言switch-case语句详解 switch-case语句是C语言中的一种选择语句,用于根据不同的条件执行不同的代码块。在计算机二级C语言考试中,switch-case语句是重要的考点之一。下面我们将详细讲解switch-case语句的使用和考点。 一、switch-case语句的基本格式 switch-case语句的基本格式为: ``` switch(expression){ case constant1: 代码块1; break; case constant2: 代码块2; break; ... default: 代码块n; break; } ``` 其中,expression是整型表达式,constant1、constant2等是整型常量,代码块1、代码块2等是相应的执行代码。default是可选的,表示如果expression不等于任何一个case的值时执行的代码块。 二、switch-case语句的执行流程 switch-case语句的执行流程为: 1. 首先计算expression的值 2. 将expression的值和每个case的值进行比较 3. 如果找到匹配的case,则执行对应的代码块 4. 如果没有找到匹配的case,则执行default代码块 三、switch-case语句的考点 1.switch语句的控制表达式必须是整型的 switch语句的控制表达式必须是整型的,否则将报错。例如,`switch(w)`是错误的,因为w是浮点型变量。 2.switch语句的case标签必须是整型常量 switch语句的case标签必须是整型常量,否则将报错。例如,`case 1.0:`是错误的,因为1.0是浮点型常量。 3.switch语句的执行流程 switch语句的执行流程是从上往下执行的,如果找到匹配的case,则执行对应的代码块,然后跳出switch语句。如果没有找到匹配的case,则执行default代码块。 四、实例分析 1. 若有定义:float w; int a, b; 则合法的 switch 语句是 switch(a); 或 switch(b);,因为switch语句的控制表达式必须是整型的。 2. 有如下程序: ``` main() { int x=1,a=0,b=0; switch(x){ case 0: b++; case 1: a++; case 2: a++;b++; } printf(“a=%d,b=%d\n” ,a,b); } ``` 该程序的输出结果为a=2,b=1,因为switch语句的执行流程是从上往下执行的,且没有break语句,所以会执行所有的代码块。 3. 若a、b、c1、c2、x、y均是整型变量,正确的switch语句是switch(a+b);、switch(a*a+b*b)等,因为switch语句的控制表达式必须是整型的。 4. 下列程序段的输出结果是passwarn,因为switch语句的执行流程是从上往下执行的,且找到匹配的case时执行对应的代码块。 5. 以下程序的输出结果是31,因为switch语句的执行流程是从上往下执行的,且找到匹配的case时执行对应的代码块。 6. 有以下程序: ``` main() { int a=15,b=21,m=0; switch(a%3) { case 0: m++;break; case 1: m++; switch(b%2) { default: m++;break; case 0: m++; } } } ``` 该程序的输出结果是2,因为switch语句的执行流程是从上往下执行的,且找到匹配的case时执行对应的代码块。 switch-case语句是C语言中的一种重要的选择语句,需要掌握其基本格式、执行流程和考点,以便更好地应用于实际编程中。
- 粉丝: 14
- 资源: 9万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 获取CPU的序列号的Python脚本
- 4354图446546546546546
- 邮箱管理技巧:减少垃圾邮件的9项实用措施
- 三汇SMG 系列D 型模拟网关用户手册,用于三汇SMG系列网关配置
- Siemens Automation Framework V1.2
- 单个IO口检测多个按键
- 汇川EASY32x固件6.3.0.0
- 高分成品毕业设计《基于SSM(Spring、Spring MVC、MyBatis)+MySQL开发个人财务管理系统》+源码+论文+说明文档+数据库
- 高分成品毕业设计《基于SSM(Spring、Spring MVC、MyBatis)+MySQL开发B2C电子商务平台》+源码+论文+说明文档+数据库
- HKJC_3in1_TR_PROD_L3.0R1An_Build10229.apk