我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

这个程序为什么运行结果是29不是11

#include<stdio.h>
#define S(x) x*x/x
int main()
{ int k=6,j=3;
printf("%d,%d\n",S(k+j+2),S(j+k+2));
return 0;
}

因为 S(x) 没有写成((x)*(x)/(x))

printf("%d,%d\n",S(k+j+2),S(j+k+2));
语句宏替换后为
printf("%d,%d\n",k+j+2*k+j+2/k+j+2,j+k+2*j+k+2/j+k+2);

所以输出的是:
6+3+2 * 6+3+2/6+3+2 = 6+3+12+3+0+3+2 = 29
3+6+2 * 3+6+2/3+6+2 = 3+6+6+6+0+6+2=29

k+j+2*k+j+2/k+j+2 -------> 6+3+2*6+3+2/6+3+2 = 6+3+12+3+0+3+2 = 29

近期文章

  • VMware 清除后还是报错!怎么办?
  • python 下载easyocr,下载完成后出现的问题?
  • 戴尔笔记本新版BIOS怎样设置U盘启动,新版BIOS没看懂
  • 高采纳率,c语言判断是否素数
  • PTA判断回文有一个判断点不得分
  • easyUI给textbox赋空值
  • envi能用shp数据获得植被覆盖度吗
  • html怎么改变选择文件图标
  • Python 各位看看 快顶不住了
  • 分组后输出列表是一行 如何分组每组空一行
  • python程序里面存在一个问题
  • java相关的一些问题求解
  • 通过C语言代码解决下面的问题
  • 可以给我点思路吗?不用if和which,条件太多,用不来?:
  • 基于pytorch,求解建立lstm分类模型思路和方法
  • 手机后台管理壁纸锁死无法更改
  • 有人会ROS下的无人机定位仿真吗
  • 220.166.20.148:8888显示
  • 能把Python的变量放到JS中用么
  • Linux虚拟机的安装问题。

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华