main() int a=3; printf("% d\ n",( a+ a-= a* a)); 200

main()inta=3;printf("%d\n",(a+a-=a*a));结果a等于负六是怎么来的,麻烦说清楚说,详细说明运算顺序。... main() int a=3; printf("% d\ n",( a+ a-= a* a));结果a等于负六是怎么来的,麻烦说清楚说,详细说明运算顺序。 展开
 我来答
microroom
科技发烧友

2020-04-04 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:7118
采纳率:83%
帮助的人:1596万
展开全部

可能是书写有误,代码有问题,不能通过编译。

如果是这样则可以:

(a+a-=a*a)改成a+(a-=a*a),这样的话就相当于a+(a=a-a*a)。

先算a*a等于9,

再算a-a*a等于3-9等于-6,于是a等于-6,

最后算a+(a=a-a*a)等于-6+(-6)等于-12,于是输出-12。

所以输出-12,a最后等于-6。

匿名用户
2020-04-04
展开全部
a一开始等于3;后面的程序中只有一处改变了a的值,即:a -= a*a,相当于a = a - a*a,
a = 3 - 3 * 3 = -6 最终a等于-6.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
国姐pU
2020-04-04 · 贡献了超过318个回答
知道答主
回答量:318
采纳率:7%
帮助的人:15.6万
展开全部
为什么不去网上找?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式