以下程序的输出结果是 ______。 #define M(x,y,z) x*y+z main() {int a=1,b=2,c=3; printf("%d\n",M(a+b,b+c,c+a) ); }

admin2010-01-10  12

问题 以下程序的输出结果是 ______。    #define  M(x,y,z) x*y+z    main()    {int a=1,b=2,c=3;      printf("%d\n",M(a+b,b+c,c+a) );    }

选项 A、19
B、17
C、15
D、12

答案8

解析 C语言的宏定义包括不带参数的宏定义与带参数的宏定义。本题为带参数的宏定义,其形式为:
     #define宏名(形参表)字符串
  本题的M(a+b,b+c,c+a)被字符串a+b*b+c+c+a代替。
转载请注明原文地址:https://kaotiyun.com/show/TTWp777K
0

最新回复(0)