问题 单项选择题

有以下程序: main() {int y=1,x=2,z=3; printf("%d,%d\n",(++x,y++),z+2); } 执行后的输出结果是( )。

A.3,5

B.2,5

C.3,3

D.1,5

答案

参考答案:D

解析: 本题考查逗号表达式。逗号表达武的求解步骤是先求解表达式1,然后依次求解表达式2,直到表达式N的值。整个逗号表达式的值就足最后一个表达式N的值。(++x,y++)这个表达式的返回值是y++,先使用y的债,然后将y加1,所以输出第一个值为1。第二个输出的值为z+2=3+2=5。

填空题
填空题