全部科目 > 嵌入式系统设计师 >
2017年下半年 上午试卷 综合知识
第 60 题
知识点 选择语句  
关键词 语言  
章/节 嵌入式系统程序设计  
 
 
执行下面C语言程序段的结果是(60)。
main ( ) {
int x=l,a=l,b=l;
switch(x) {
case 0: b++;
case 1: a++;
case 2: a++; b++;
}
printf (”a=%d,b=%d“, a, b);
}
 
  A.  a=2, b=2
 
  B.  a=3, b=2
 
  C.  a=2, b=l
 
  D.  a=3, b=3




 
 
相关试题     嵌入式系统程序设计 

  第51题    2012年下半年  
下列程序运行后输出的数据是(51)。

  第42题    2009年下半年  
在某32位系统中,若声明变量char*files[]={"f1","f2","f3","f4"},则files占用内存大小为(42)字节。

  第61题    2024年上半年  
在C语言程序中,打开文件“myfile”进行修改,若该文件不存在,则返回空指针。正确的方式是()。

 
知识点讲解
· 选择语句
 
        选择语句
        表示分支(选择)结构的语句有if语句和switch语句。
        (1)if语句。if语句用于表达根据一定的条件在两条流程中选择一条执行的情况。if语句的一般形式为:
        
        其含义是当给定的条件p满足(即表达式p的值不为0)时,执行语句1,否则执行语句2。语句1和语句2中必须且仅能执行其中的一条。在if语句的简单形式中,可以省略else及其子句“语句2”。良好的C编程风格提倡将语句1和语句2用“{”“}”括起来。
        if语句能够嵌套使用,即一个if语句能够出现在另一个if语句里。使用if语句的嵌套形式需要注意else的配对情况,C规定:else子句总是与离它最近且没有else相匹配的if语句配对。
        例如,下面语句(a)、(b)中,else与if的匹配不同。
        
        在语句(a)中,else与if(x<5)匹配,该语句的含义是:当x大于0且小于5时,执行y=x+1;,若x大于或等于5,则执行y=x-1;。
        在语句(b)中,else与if(x>0)匹配,该语句含义是:当x大于0且小于5时,执行y=x+1;,若x小于或等于0,则执行y=x-1;。
        (2)switch语句。switch语句用于表示从多分支的执行流程中选择一个来执行的情况。
        switch语句的一般形式如下:
        
        switch语句的执行过程可以理解为:首先计算表达式p的值,然后自上而下地将其结果值依次与每一个常量表达式的值进行匹配(常量表达式的值的类型必须与“表达式”的类型相同)。如果匹配成功,则执行该常量表达式后的语句系列。当遇到break时,则立即结束switch语句,否则顺序执行到switch中的最后一条语句。default是可选的,如果没有常量表达式的值与“表达式”的值匹配,则执行default后的语句系列。需要注意的是,表达式p的值必须是字符型或整型。
        编译时通常根据switch语句中各case后面的常量表达式来构造一个跳转表,从而在确定表达式p的值之后可以快速定位到相应的语句位置开始执行,而不是逐一与各常量表达式的值进行比较。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有