niusouti.com
更多“以下程序的输出结果是______。#defineSQR(X)X*Xmain(){int a=16,k=2,m=1; a/=SQR(k+m)/SQR(k+m); ”相关问题
  • 第1题:

    以下程序的输出结果是 ______。includedefine SQR(x)x*xmain((){ int a,k=3;a=++SQR(K

    以下程序的输出结果是 ______。#include<stdio.h>#define SQR(x)x*xmain((){ int a,k=3; a=++SQR(K+1); printf("%d\n",A) ;}

    A.8

    B.9

    C.17

    D.20


    正确答案:B
    解析:本题宏替换中遇到形参x以实参k+1代替,其他字符不变。SQR(k+1)展开后应为字符串k+1*k+1。

  • 第2题:

    下列程序的输出结果是______。 #define SQR(X) X*X main ( ) { int a=16, k=2, m=1; a/=SQR (k+m)/SQR (k+m); printf ("d\n", a); }

    A.16

    B.2

    C.9

    D.1


    正确答案:B

  • 第3题:

    写出下面程序执行后的运行结果。 #include <stdio.h> #define SQR(X) X*X int main() { int a=16, k=2, m=1; a/=SQR(k+m)/SQR(k+m); printf("%d",a); return 0; }


    G [解析]x='f'则'f'-'a'=5,'A'+5+1='G'。对一下ASCⅡ码表就行了。

  • 第4题:

    以下程序的输出结果是______。includedefine SQR(x)x*xmain(){int a,k=3; a=++SQR(k+1

    以下程序的输出结果是______。 #include<stdio.h> #define SQR(x)x*x main() { int a,k=3; a=++SQR(k+1); printf("%d\n",a); }

    A.8

    B.9

    C.17

    D.20


    正确答案:B
    解析:本题宏替换中遇到形参x以实参k+1代替,其他字符不变。SQR(k+1)展开后应为字符串k+1*k+1。

  • 第5题:

    以下程序的输出结果是______。 #define TIMES(X) X*X main() { int a=16,k=2,m=1; a/=TIMES (k+m)/TIMES(k+m); printf("d\n",a); }

    A.16

    B.2

    C.9

    D.1


    正确答案:B
    解析:宏定义的作用是进行字符的替换,应先将赋值语句的右边进行宏替换,即等号右边为:k+m*k+m/k+m*k+m=2+1*2+1/2+1*2+1=2+2+0+2+1=7,然后计算a/=7,即a=a/7=16/7=2。