有以下程序: #include #define PT 3.5; #define S(x)PT*x*x; main( ) { int a=1,b=2; printf("%4.1f\n",S(a+b))

admin2021-02-25  23

问题 有以下程序:
    #include  
    #define PT  3.5;
    #define  S(x)PT*x*x;
    main( )
    {  int a=1,b=2;
    printf("%4.1f\n",S(a+b));  }
  程序运行后的输出结果是(    )。

选项 A、7.5
B、31.5
C、程序有错无输出结果
D、14.0

答案C

解析 宏定义不是c语句,末尾不需要分号。所以语句“printf("%4.1f、n",S(a+b));”展开后为“printf("%4.1f\n",3.5;*a+b*a+b;);”所以程序会出现语法错误。
转载请注明原文地址:https://kaotiyun.com/show/dLtp777K
0

最新回复(0)