44、设 int a=12,则执行完语句 a+=a-=a*a后,a的值是
44、设inta=12,则执行完语句a+=a-=a*a后,a的值是A)552B)264C)144D)-264...
44、设 int a=12,则执行完语句 a+=a-=a*a后,a的值是
A) 552 B) 264 C) 144 D) -264 展开
A) 552 B) 264 C) 144 D) -264 展开
4个回答
2018-08-18
展开全部
#include <stdio.h>
int main() {
int a = 12;
a+=a-=a*a;
/**
* a+=a-= a*a;
* --> a=a+(a-=a*a)
* --> a=a+(a=a-a*a) <a=a-a*a=-132>
* --> a=a+a
* --> a=-264
*/
printf("a = %d",a);
return 0;
}
差点迷糊掉,多亏楼上的回答,才发现半路a的值已经变了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-08-18 · 知道合伙人互联网行家
关注
展开全部
额 一开始我被糊弄到了 后来用printf一输出才发现原来错得糊弄离谱啊
b=10 a=1 b-=a 等价于b=b-a 所以b=9 a++ 所以a=2 重头戏来啦
while(b--<0) 嘿嘿 注意是<号哦 b--<0 是先用b的值与0比较大小 再b自减1 也就是说9<0 当然是假啦 所以就退出循环 又b要自减1 所以最后b=8呵呵
b=10 a=1 b-=a 等价于b=b-a 所以b=9 a++ 所以a=2 重头戏来啦
while(b--<0) 嘿嘿 注意是<号哦 b--<0 是先用b的值与0比较大小 再b自减1 也就是说9<0 当然是假啦 所以就退出循环 又b要自减1 所以最后b=8呵呵
追问
亲,回答错问题了吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a=a-a*a=12-12*12=-132
a=a+a=(-132)+(-132)=-264
a的值是-264,选D
a=a+a=(-132)+(-132)=-264
a的值是-264,选D
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询