作业帮 > 综合 > 作业

请教大家一道C语言题:设a=12,求下面表达式a的值:a+=a-=a*=a.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/18 15:28:22
请教大家一道C语言题:设a=12,求下面表达式a的值:a+=a-=a*=a.
这个题目要看运算符的优先级和结合性.
=是右结合的,a初值是12,执行a+=a-=a*=a;时是这样来执行的:
a*=a;//a值为144
a-=a; //a值为0
a+=a; //a值为0
运行完后a的值为0.
如果再运行,则:
a-=144; //a的值为-144
a+=a; //a的值为-288
即运行完结果是-288
若a+=a-=144;语句是在a初值为12的条件运行的,同理可得到运行后a的值是-264.