预测以下程序的输出?
# include
int main()
{
int x = 10;
int y = 20;
x += y += 10;
printf (" %d %d", x, y);
return 0;
}
(A) 40 20
(B) 40 30
(C) 30 30
(D) 30 40答案: (B)
说明:所讨论的主要陈述是“ x + = y + = 10”。由于语句中有两个+ =运算符,因此关联性成为问题。复合赋值运算符的关联性是从右到左,因此该表达式的求值为x + =(y + = 10)。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。