电子渣男 2022-02-16 18:43 采纳率: 85.7%
浏览 30
已结题

下面程序的运行结果是怎么求出来81的,没学h



```c
#define S(x) 4*x*x+1
int main()
{
    int m = 6,n=8;
    printf("%d",S(m+n));
    return 0;

}

```

  • 写回答

3条回答 默认 最新

  • 谛凌 2022-02-16 18:59
    关注

    调用宏函数的时候,参数不会先进行运算,也就是说,传进去的x不是6+8=14,而是直接传进去6+8,把宏函数里面的x直接换成6+8

    就得到了:4*m+n*m+n+1  即:
    4*6+8*6+9*1=81
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月24日
  • 已采纳回答 2月16日
  • 创建了问题 2月16日

悬赏问题

  • ¥15 无源定位系统的时差估计误差标准差
  • ¥15 请问这个代码哪里有问题啊
  • ¥20 python--version在命令端输入结果Python is not defined怎么办?还有pip不是exe格式是不是没安装成功?
  • ¥15 通过GaussianView进行结构微调消除虚频
  • ¥15 调用transformers库
  • ¥15 由于导出的数据名字中带有/,导致Matlab打不开,怎么办?
  • ¥15 新硬盘安装的程序总是崩溃,提示遇到错误
  • ¥15 openpcdet自制数据集评估bev精度和3d精度相同
  • ¥15 excel 上下按钮 显示行
  • ¥20 云卓h12pro 数传问题