对于以下宏定义: #define M(x) x*x #define N(x, y) M(x)+M(y)执行语句z=N(2, 2+3);后,z的值是 。
举一反三
- 对于以下宏定义: #define M 1+2 #define N 2*M+1执行语句“x=N;”之后,x的值是 。
- 若有宏定义: #define M(x,y,z) x*y+z,则宏引用M(2+3,4+5,6+7)通过宏展开后的表达式应为(2+3)*(4+5)+6+7。
- 有宏定义#define M(x)x*x*2;则a=M(2+3)的值() A: 2 B: 3 C: 11 D: 14
- 实战演练:请说明程序运行完后x,y,z,m,n的值分别是多少?x是____,y是____,z是____,m是____,n是____。main(){ int x=6,y,z,m,n; y=x++; z=++x; m=x/y; n=z%y; }
- 已知int x=1,y=2,z=3;以下语句执行后x,y,z的值是( ). if(x>y) z=x; x=y; y=z; A: x=1, y=2, z=3 B: x=2, y=3, z=3 C: x=2, y=3, z=1 D: x=2, y=3, z=2