niusouti.com
参考答案和解析
#define POWER(x) ((x)*(x))
更多“在任何情况下计算平方都不会引起二义性的宏定义是:”相关问题
  • 第1题:

    土的自重应力在任何情况下都不会引起土层的变形吗?为什么?


    正确答案:土中自重应力在有些情况下会引起土层的变形。这是因为对于成土年代长久,土体在自重应力作用下已经完成压缩固结,土自重应力不会引起土层的变形。对于欠固结土,由于沉积后经历年代时间不久,其自重固结作用尚未完成,自重应力会引起土层的变形。地下水位下降,使地基中有效自重应力增加,从而也会引起土层的变形。

  • 第2题:

    以下说法正确的是( )。

    A.宏定义是C语句,要在行末加分号

    B.可以使用#undefine提前结束宏名的使用

    C.在进行宏定义时,宏定义不能嵌套

    D.双引号中出现的宏名也要进行替换


    正确答案:B
    解析:本题考查宏的使用规则:①字符替换格式:#define标识符字符串,行末不加分号;②双引号中出现的宏名不替换;③如果提前结束宏名的使用,程序中可以使用#ndefine;④在进行宏定义时,宏定义能层层置换,能够嵌套。

  • 第3题:

    下列选项中不会引起二义性的宏定义是( )。A.defineS(x)x*xB.defineS(x)(x)*(x)SXB

    下列选项中不会引起二义性的宏定义是( )。

    A.#defineS(x)x*x

    B.#defineS(x)(x)*(x)

    C.#defineS(x)(x)*x

    D.#defineS(x)(x*x)


    正确答案:D
    本题考查参数的宏替换。为避免二义性有些参数表达式必须加括号,否则在实参表达式替换时,会出现错误。例如x为(m+n)时替换A:m+n*m+n,所以选项D最符合条件。

  • 第4题:

    下列选项中不会引起二义性的宏定义是( )。

    A.#defineS(x)x*x

    B.#defineS(x)(x)*(x)

    C.#defineS(x)(x*x)

    D.#defineS(x)((x)*(x))


    正确答案:D
    解析:本题考查带参数的宏的替换。有些参数表达式必须加括号,否则,在实参表达式替换时,会出现错误。

  • 第5题:

    在汇编语言程序的开发过程中使用宏功能的顺序是()。

    A.宏定义,宏调用
    B.宏定义,宏展开
    C.宏定义,宏调用,宏展开
    D.宏定义,宏展开,宏调用

    答案:C
    解析:

  • 第6题:

    若文法 G 定义的语言是无限集,则文法必然是()。

    • A、递归的
    • B、前后文无关的
    • C、二义性的
    • D、无二义性的

    正确答案:A

  • 第7题:

    宏定义开始是“DISP MACRO”语句,则宏定义结束的语句是什么?


    正确答案:ENDM

  • 第8题:

    自重应力在任何情况下都不会引起地基沉降吗?为什么?


    正确答案:对于正常固结土和超固结土来说,自重应力不会引起地基沉降了,但对于欠固结土(新沉积的土或刚填筑的土)来说,由于现有的固结应力大于先期固结应力,自重应力也会引起地基沉降。

  • 第9题:

    问答题
    自重应力在任何情况下都不会引起地基沉降吗?为什么?

    正确答案: 对于正常固结土和超固结土来说,自重应力不会引起地基沉降了,但对于欠固结土(新沉积的土或刚填筑的土)来说,由于现有的固结应力大于先期固结应力,自重应力也会引起地基沉降。
    解析: 暂无解析

  • 第10题:

    单选题
    若文法 G 定义的语言是无限集,则文法必然是()。
    A

    递归的

    B

    前后文无关的

    C

    二义性的

    D

    无二义性的


    正确答案: A
    解析: 暂无解析

  • 第11题:

    问答题
    为什么要用宏定义?怎样由宏定义得到宏实例?

    正确答案: 使用宏定义的目的是为了简化类型定义的方法。
    用具体的值代替宏定义中的变量可以产生宏实例。
    解析: 暂无解析

  • 第12题:

    填空题
    宏定义开始是“DISPMACRO”语句,则宏定义结束的语句是()

    正确答案: ENDM
    解析: 暂无解析

  • 第13题:

    以下在任何情况下计算两数积时都不会引起二义性的宏定义是()。


    参考答案

  • 第14题:

    下列选项中不会引起二义性的宏定义是( )。

    A.#define S(x)x*x

    B.#define S(x)(x)*(x)

    C.#define S(x)(x*x)

    D.#define S(x)((x)*(x))


    正确答案:D
    解析: 本题考查带参数的宏的替换。有些参数表达式必须加括号,否则,在实参表达式替换时,会出现错误。

  • 第15题:

    选出任何情况下都不引起二义性的宏定义( )。

    A.#define POWER(x)x*x

    B.#define POWER(x)((x)*(x))

    C.#define POWER(x)(x*x)

    D.#define POWER(x)(x)*(x)


    正确答案:B
    解析:引起带参数宏的二义性主要有两个方面:一是,参数之间因运算符优先级不确定而带来的二义性。例如本题的选项A),若程序中使用POWER(a+b),会展开为a+b*a+b,这样就会先计算b*a的值,然后再加一个a和一个b,产生二义性。杜绝这种二义性的方法是在宏定义的每个参数外加上圆括号以保证总是先计算每个参数的值,就好像本题的选项D)那样。另一个是,整个宏所代表的表达式因运算符优先级不确定而带来的二义性。例如本题的选项D),若程序中使用a/POWER(b),会展开为a/(b)*(b),这样就会先计算a/b的值,然后再乘以b,产生二义性。杜绝这种二义性的方法是对整个宏定义加一个圆括号,就好像本题的选项B)那样。故选项B)在任何情况下都不会引起二义性,应该选B。

  • 第16题:

    计算平方数时不可能引起二义性的宏定义是( )

    A.define SOR(x)x*x

    B.define SQR(x)(x)*(x)

    C. define SQR(x)(x*x)

    D. define SQR(x)((x)*(x))


    正确答案:D
    分析备选答案A:如果宏引用是“SQR(2+3)”,则宏替换后的结果是“2+3*2+3”,结果是错误的,因此这个答案可能引起二义性。分析备选答案B:如果宏引用是“3/SQR(2+3)”,则宏替换后的结果是“3/(2+3)*(2+3)”,结果也是错误的,因此这个答案可能引起二义性。分析备选答案C:如果宏引用是“SQR(2+3)”,则宏替换后的结果是“(2+3*2+3)”,结果也是错误的,因此这个答案可能引起二义性。只有备选答案D不会引起二义性。所以本题答案应选D。

  • 第17题:

    以下在任何情况下计算平方数时都不会引起二义性的宏定义是()。

    • A、#define POWER(x)  x*x
    • B、#define POWER(x)  (x)*(x)
    • C、#define POWER(x)  ((x)*(x))
    • D、#define POWER(x)  (x*x)

    正确答案:C

  • 第18题:

    为什么要用宏定义?怎样由宏定义得到宏实例?


    正确答案: 使用宏定义的目的是为了简化类型定义的方法。
    用具体的值代替宏定义中的变量可以产生宏实例。

  • 第19题:

    宏定义开始是“DISPMACRO”语句,则宏定义结束的语句是()


    正确答案:ENDM

  • 第20题:

    在任何情况下,土体自重应力都不会引起地基沉降。


    正确答案:错误

  • 第21题:

    判断题
    在任何情况下,土体的自重应力都不会引起地基沉降。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第22题:

    判断题
    在任何情况下,土体自重应力都不会引起地基沉降。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第23题:

    单选题
    在汇编语言程序的开发过程中使用宏功能的顺序是()。
    A

    宏定义,宏调用

    B

    宏定义,宏展开

    C

    宏定义,宏调用,宏展开

    D

    宏定义,宏展开,宏调用


    正确答案: C
    解析: 暂无解析

  • 第24题:

    单选题
    以下在任何情况下计算平方数时都不会引起二义性的宏定义是()。
    A

    #define POWER(x)  x*x

    B

    #define POWER(x)  (x)*(x)

    C

    #define POWER(x)  ((x)*(x))

    D

    #define POWER(x)  (x*x)


    正确答案: B
    解析: 暂无解析