为了账号安全,请及时绑定邮箱和手机立即绑定

求解求解!!这道题为啥是D

8、设int a=12,则执行完语句a+=a-=a*a 后,a的值是
D
A) 552
B) 264
C) 144
D) -264


正在回答

2 回答

#include <stdio.h>

int main()

{

    int a = 12,s;

    s=a+=a-=a*a;

    printf("%d", s);

    return 0;


0 回复 有任何疑惑可以回复我~
#1

蒙上灰的梦想

哈哈,没毛病
2021-04-07 回复 有任何疑惑可以回复我~

a+=a-=a*a

即时 a+=(a-=a*a)等同于a=a+(a=a-a*a)

a-=a*a 为a=a-a*a 此时结果12-12*12=-132赋值给a

更新a的值,计算-132-132=-264再赋值给a



9 回复 有任何疑惑可以回复我~
#1

慕用8069283

意思是不是先运算优先级的,取得a的新值,之后还没运算到的a全部赋值这一新值??
2021-03-13 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

求解求解!!这道题为啥是D

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信