当执行下列宏定义命令后,S的值为 ( ) # defineR3.0 # define PI 3.1415926 # define L2 * PI * R # define S PI * R * R
A.3.1415926
B.18.849556
C.3
D.28.2743334
第1题:
已知#define M 2;的宏定义,执行语句k=M*5;后,k的值是
A.10
B.5
C.2
D.以上答案都不对
第2题:
在宏定义define P13.14159中,用宏名PI代替一个______。
第3题:
以下程序的执行结果是【 】。
include<iostream>
define PI____3.14159
const int R=10;
void main()
{
double a,b;
ac2*R*PI;
b=R*R*PI;
cout<<"a="<<a<<","<<"b="<<b<<endl;"
}
第4题:
下面程序的输出结果是( )。 #define PI 3.1415 #define ARE(X) PI*x*x main() { int r=2; printf("%.2f",ARE(r+1)); }
A.28.26
B.28.26
C.9.28
D.9.28
第5题:
以下叙述中不正确的是( )。
A.预处理命令行都必须以#号开始
B.在程序中凡是以#号开始的语句行都是预处理命令行
C.宏替换不占用运行时间,只占编译时间
D.定义#define PI 3.1415926;是正确的
第6题:
设有以下宏定义:#define N 3#define Y(n) ((N+1)*n)则执行以下语句后,z的值为______。z=2 * (N+Y(5+1));
A.出错
B.42
C.48
D.54
第7题:
设有变量pi=3.1415926,执行命令?ROUND(pi,3)的显示结果为 ______。
A.3.141
B.3.142
C.3.14
D.3
第8题:
若有以下宏定义:
#define N 2
#define Y(n)((N+1)*n)
则执行语句z=2*(N+Y(5));后的结果是( )。
A.语句有错误
B.z=34
C.z=70
D.z无定值
本题考查宏定义的功能,可以把它看成一个函数,直接代人参数,可计算出结果为34, 故选B。
第9题:
以下叙述中不正确的是
A.预处理命令行都必须以#号开始
B.在程序中凡是以#号开始的语句行都是预处理命令行
C.宏替换不占用运行时间,只占编译时间
D.在以下定义是正确的:#define PI 3.1415926;
第10题:
下面宏定义正确的是( )
A.#define S a*b
B.#define PI 3.14;
C.#define max(a,b) ((a) >(b) ?(a) ;(b) )
D.#define s(x) (x)*(x);