计算机程序设计

执行下面的程序后,a的值是() #define SQR(X) X*X main( ) { int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf(""%d/n"",a); }A、10B、1C、9D、0

题目

执行下面的程序后,a的值是() #define SQR(X) X*X main( ) { int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf(""%d/n"",a); }

  • A、10
  • B、1
  • C、9
  • D、0
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在VB程序中,以下程序段执行后,x的值为( )x=0Do While x<=2x=x+1LoopA.2B.3C.4D.5

在VB程序中,以下程序段执行后,x的值为( )

x=0

Do While x<=2

x=x+1

Loop

A.2

B.3

C.4

D.5


正确答案:B

第2题:

有以下程序:

define f(x)x*x

main()

{ int i;

i=f(4+4)/f(2+2);

printf("% d\n", i);

}

执行后的输出结果是【 】。


正确答案:28
28 解析:i=f(4+4)/f(2+2)=4+4×4+4/2+2×2+2=4+16+2+4+2=28。

第3题:

执行下面的程序段后,x的值为______ 。 X=5 For i=1 To 20 Step 2 x=x+ i\5 Next i

A.21

B.22

C.23

D.24


正确答案:A

第4题:

执行下面的程序后,a的值是 ( ) # define SQR (X) X * X main( ) { int a=10,k=2,m=l; a/=SQR (k+m)/SQR (k+m); printf("%d\n",a); }

A.10

B.1

C.9

D.0


正确答案:B

第5题:

下列程序执行后的输出结果是( ) #define MA(x) x*(x-1) main() { int a=1,b=2; printf("%d\n",MA(1+a+b)); }

A.5

B.6

C.7

D.8


正确答案:D
解析:本题中的宏调用MA(1+a+b)展开后的结果是1+a+b*(1+a+b-1)=1+1+2*(1+1+2-1)=2+2*3=8。所以输出的结果是8,选项D正确。

第6题:

已知下面的程序段,正确的判断是 ______。#define A 3#define B(A) ((A+1)*A) ……int a=3;X=3*(A+B(7));

A.程序错误,不允许嵌套定义

B.X=93

C.X=81

D.程序错误,宏定义不允许有参数


正确答案:C
解析:本题的宏定义是合法的,宏定义展开为3*(3+((A+1)*a))=3*(3+((7+1)*3))=81。

第7题:

以下程序的输出结果是 ( ) # 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

第8题:

以下程序运行后,输出结果是define PT5.5define S(x)PT*x*xincludemain(){int a=1,b=

以下程序运行后,输出结果是 #define PT 5.5 #define S(x) PT*x*x #include<stdio.h> main() { int a=1,b=2; printf("%4.1f\n",s(a+b));}

A.49.5

B.9.5

C.22

D.45.0


正确答案:A

第9题:

已知下面的程序段,正确的判断是______。 #define A 3 #define B(A) ((A+1)*a) int a=3; ...... X=3*(A+B(7));

A.程序错误,不允许嵌套定义

B.X=93

C.X=81

D.程序错误,宏定义不允许有参数


正确答案:C
解析:本题的宏定义是合法的,宏定义展开为3*(3+((A+1)*a))=3*(3+((7+1)*3))=81。

第10题:

执行下列程序后,输出的结果是()。 includedefine S(X) X*Xvoid main(){int a=9,k=3,m=

执行下列程序后,输出的结果是( )。 #include<stdio.h> #define S(X) X*X void main() { int a=9,k=3,m=2; a/=S(k+m)/S(k+m); printf("%d",a); }

A.1

B.4

C.9

D.0


正确答案:D
解析:本题主要是考查带参数的宏定义及其相关运算。本题中宏运算过程如下:a=a/S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m=9/(3+2*3+2/3+2*3+2)=0。

更多相关问题