阅读下面程序:#include#define A 3.897678void main( ){printf("A=%f",A);}程序运行结果为()。
A. 3.897678=3.897678
B. 3.897678=A
C. A=3.897678
D. 无结果
查看答案
有宏定义:#define LI(a,b) a*b#define LJ(a,b) (a)*(b)在后面的程序中有宏引用:x=LI(3+2,5+8);y=LJ(3+2,5+8);则x、y的值是()。
A. x=65,y=65
B. x=21,y=65
C. x=65,y=21
D. x=21,y=21
有以下程序:#define f(x) (x*x)void 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
有以下程序:#define N 5#define M1 N*3#define M2 N*2void main(){ int i;i=M1+M2; printf("%d\n",i);}程序运行后输出结果是()。
A. 10
B. 20
C. 25
D. 30
以下有关宏的不正确叙述是()。
A. 宏名无类型
B. 宏替换只是字符替换
C. 宏名必须用大写字母表示
D. 宏替换不占用时间运行