以下程序的输出结果是( )。 main() { int a=3; printf("%d\n",(a+a-=a*a)); }

admin2013-06-11  35

问题 以下程序的输出结果是(    )。
main()
{ int a=3;
printf("%d\n",(a+a-=a*a));
}

选项 A、-6
B、12
C、0
D、-12

答案D

解析 本题可以写成:a+a+(a-(a*a)),所以*的优先级最高,其次是-=的,+的优先级最低,因此先求a-=a*a=9,表达式变为a+a+-=9,a即a=a-9=-6,再次变为a+(-6)=-12,故选择D选项。
转载请注明原文地址:https://kaotiyun.com/show/8CJp777K
0

最新回复(0)