免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2016年下半年 嵌入式系统设计师 上午试卷 综合知识
  第19题      
  知识点:   逻辑运算符   表达式求值
  关键词:   表达式        章/节:   嵌入式系统程序设计       

 
逻辑表达式求值时常采用短路计算方式。“&&”“||”“!”分别表示逻辑与、或、非运算,“&&”“||”为左结合,“!”为右结合,优先级从高到低为“!”“&&”“||”。对逻辑表达式“x&&(y||!z)”进行短路计算方式求值时,(19)。
 
 
  A.  x为真,则整个表达式的值即为真,不需要计算y和z的值
 
  B.  x为假,则整个表达式的值即为假,不需要计算y和z的值
 
  C.  x为真,再根据2的值决定是否需要计算y的值
 
  D.  x为假,再根据y的值决定是否需要计算z的值
 
 
 

  相关试题:嵌入式系统程序设计          更多>  
 
  第35题    2017年下半年  
   31%
将一个32位数0x12345678存储到8000H〜8003H四个字节单元中,若以小端模式存储,则8000H存储单元的内容为(35)。
  第24题    2022年上半年  
   0%
Jackson设计方法是一种面向(64)的软件设计方法。
  第51题    2023年上半年  
   0%
以下关于各类文档撰写阶段的叙述中,不正确的是(13)。
   知识点讲解    
   · 逻辑运算符    · 表达式求值
 
       逻辑运算符
        逻辑与(&&)、逻辑或(||)、逻辑非(!)的运算结果为1(表示true)或为0(表示false)。“逻辑非”是单目运算符,它将操作数的逻辑值取反。“逻辑与”是双目运算符号,其含义是“当且仅当两个操作数的值都为true时,逻辑与运算的结果为true”。“逻辑或”的含义是“当且仅当两个操作数的值都为false时,逻辑或运算的结果为false”。
        例如,逻辑表达式!20的结果是0,10&&5的结果是1,10||5.5的结果是1,10&&0的结果是0。
        在C程序中,由逻辑运算符“&&”“||”构造的表达式采用短路计算方式求值,即对于“a&&b”,a为1(假)时不需要再计算b的值就可以确定该表达式的结果为0(假),对于“a||b”,a为1(真)时不需要再计算b的值就可以确定该表达式的结果为1(真)。
        例如,对于逻辑表达式((year%4==0)&&(year%100!=0)||(year%400==0)),若year%4的结果不是0(例如year的值为2001),就不需要再计算year%100的值了,因为此时“&&”运算的结果已经确定为0(即条件不成立)。
 
       表达式求值
        表达式求值是程序设计语言编译中的一个最基本问题。它的实现方法是栈的一个典型的应用实例。
        在计算机中,任何一个表达式都是由操作数(operand)、运算符(operator)和界限符(delimiter)组成的。其中操作数可以是常数,也可以是变量或常量的标识符;运算符可以是算术运算体符、关系运算符和逻辑符;界限符为左右括号和标识表达式结束的结束符。在本节中,仅讨论简单算术表达式的求值问题。在这种表达式中只含加、减、乘、除四则运算,所有的运算对象均为单变量。表达式的结束符为“#”。
        表达式一般分为中缀表达式和后缀表达式,具体如下:
               中缀表达式
               中缀表达式是通常使用的一种表达式,中缀表达式的计算规则如下。
               (1)括号内的操作先执行,括号外的操作后执行。如有多层括号,则先执行内层括号内的操作,再执行外括号内的操作。
               (2)先乘除,后加减。
               (3)在有多个乘除或加减运算可选择时,按从左到右的顺序执行,即优先级相同的操作符按先后次序进行。
               后缀表达式
               后缀表达式中只有操作数和操作符,它不再含有括号,操作符在两个操作数之后。它的计算规则非常简单,严格按照从左向右的次序依次执行每一个操作。每遇到一个操作符,就将前面的两个操作数执行相应的操作。
   题号导航      2016年下半年 嵌入式系统设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第19题    在手机中做本题