下列程序的运行结果是( )。 int y=5,x=14; y=((x=3*y,x+1),x-1); printf("x=%d,y=%d",x,y);

admin2010-09-05  19

问题 下列程序的运行结果是(    )。
   int y=5,x=14;
   y=((x=3*y,x+1),x-1);
   printf("x=%d,y=%d",x,y);   

选项 A、x=27,y=27
B、x=12,y=13
C、x=15,y=14
D、x=y=27

答案C

解析 逗号表达式的求解步骤是先求解表达式1,然后依次求解表达式2,直到表达式N的值。整个逗号表达式的值就是最后一个表达式N的值。
   表达式(x=3*y,x+1)中,  第一个表达式x=3*y =3*5=15;第二个表达式x+1=16,但没有给x或y赋值,所以x还是等于15;第3个表达式x-1=15-1=14,所以y的值为14。
转载请注明原文地址:https://kaotiyun.com/show/m7Wp777K
0

最新回复(0)