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

admin2013-02-23  53

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

选项 A、-6
B、1
C、2
D、-12

答案8

解析 赋值运算符的结合方向是自右至左,所以表达式a+=a-=a*a先运算最右边的a*a得9,再运算a=a-9,即a=3-9,所以此时a的值由3变成了-6,最后运算a=a+(-6),即a=(-6)+(-6)=-12。
转载请注明原文地址:https://jikaoti.com/ti/J5n0FFFM
0

最新回复(0)