关于复合运算的问题!求解答
发表在C语言图书答疑 2018-03-09 悬赏:1 学分 《零基础学C语言》第4章 运算符与表达式 78页-79页
是否精华
版块置顶:

代码如下:

#include<stdio.h>

int main()

{

int a=7;

a+=a*=a/=a-5;   

printf("%d\n",a);

return 0;

}

编译结果为18. 请问这是怎么算出来的呢 或者 能把a+=a*=a/=a-5;  代码拆分下来吗 再下委实不明所以 望老师解惑

分享到:
精彩评论 2
李木子
学分:2954 LV11
2018-03-10
沙发

你好:

  按照下面步骤一步一步计算,符合运算是从后往前算的

  (1)a-5=7-5=2

  (2)a/=2展开之后是a=a/2=7/2=3,此时a=3

  (3)a*=3展开之后是a=a*3=3*3=9,此时a=9

  (4)a+=9展开之后是a=a+9=9+9=18,最终结果等于18

meimeiniss
学分:22 LV2
2018-03-10
板凳

李木子 发表于2018-03-10 13:12

你好:

  按照下面步骤一步一步计算,符合运算是从后往前算的

  (1)a-5=7-5=2

  (2)a/=2展开之后是a=a/2=7/2=3,此时a=3

  (3)a*=3展开之后是a=a*3=3*3=9,此时a=9

  (4)a+=9展开之后是a=a+9=9+9=18,最终结果等于18

谢谢老师

首页上一页 1 下一页尾页 2 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照