更多“有以下程序:#definef(x)x*x main ( ) {int i; i=f (4+4) /f (2+2); printf ( "%d\n", i ); }执行 ”相关问题
  • 第1题:

    有以下程序: # define f(x) (x*x) main() { int i1, i2; i1=f(8)/f(4); i2=f(4+4)/f(2+2); printf("% d, % d\n", i1, i2); } 程序运行后的输出结果是______。

    A.64, 28

    B.4, 4

    C.4, 3

    D.64, 64


    正确答案:C
    解析:用宏代换有:i1=f(8)/f(4)=(8×8)/(4×4)=4,i2=f(4+4)/f(2+2)=(4+4×4+4)/(2+2×2+2)=3。

  • 第2题:

    有以下程序:include define f(x) x*xmain(){int i; i=f(4+4)/f(2+2); priatf("%d\n",

    有以下程序: #include <stdio.h> #define f(x) x*x main() { int i; i=f(4+4)/f(2+2); priatf("%d\n",i); } 执行后的输出结果是( )。

    A.28

    B.22

    C.16

    D.4


    正确答案:A
    解析:程序中的带参宏定义,替换展开后为i=4+4*4+4/2+2*2+2=4+16+2+4+2=28。

  • 第3题:

    有以下程序 #define f(x) x*x main() { int i; i=f(4+4)/f(2+2); printf("%d\n",i); } 执行后输出结果是

    A.28

    B.22

    C.16

    D.4


    正确答案:A
    解析:本题中首先将所有的宏替换掉,则表达式为i=4+4*4+4/2+2*2 +2,故最后输出的i的值为28。

  • 第4题:

    有以下程序 #define f(x) x*x main( ) { int i; i=f(4+4)/f(2+2); printf(“%d\n”,i); } 执行后输出结果是( )

    A.28

    B.22

    C.16

    D.4


    正确答案:A
    解析:f(4+4)/f(2+2)=4+4*4+4/2+2*2+2=28。

  • 第5题:

    有以下程序: #define f(x) x*x main() { int i; i=f(4+4)/f(2+2); printf("%d\n",i); } 执行后输出结果是( )。

    A.28

    B.22

    C.16

    D.4


    正确答案:A
    解析:本题中首先将所有的宏替换掉,则表达式为i=4+4*4+4/2+2*2+2,故最后输出的i值为28。所以,4个选项中选项A符合题意。