格物o 2022-06-24 17:45 采纳率: 0%
浏览 14

while循环体中的,是什么用法?

int x=0,y=0;
while(x<15)y++,x+=++y;
printf("%d,%d",y,x);

输出8,20

这个是怎么运算出来的呢?循环体中的,是什么含义呢?

  • 写回答

1条回答 默认 最新

  • weixin_45153560 2022-06-24 17:52
    关注

    因为y++,x+=++y;是逗号表达式,所以最终值是x+=++y;还有x+=++y等价于x=x+(++y)
    0<15 y=1,x=0+2;//x=2,y=2
    2<15 y=3,x=2+4;//x=6,y=4
    6<15 y=5,x=6+6;//x=12,y=6
    12<15 y=7,x=12+8;//x=20,y=8
    20<15 不成立
    输出:y=8,x=20

    评论

报告相同问题?

问题事件

  • 创建了问题 6月24日