do while语句的用法 int x=5,y=20; do{ y-=x; x++; } while(++x<--y);该循环执行几次

前面哪个X++,加完之后X是5,还是6,会影响后面那个++x 吗,++x是几

第1个回答  2014-06-16
首先要知道do while循环
x++是运算后x=x+1 , ++x是运算前x=x+1 , y-=x是y=y-x , --y是运算前y=y-1

本题是做两次,

更简单的理解可以在do后面输出x和y。

#include<stdio.h>

int main(void)
{
int x=5;
int y=20;

do{ printf("x=%d y=%d --->",x,y);y-=x; x++;printf("x=%d y=%d\n",x,y); }
while(++x<--y);

return 0;
}

可以得到两次结束后的x和y的值
第2个回答  推荐于2016-08-30
第一次进入do:
y-=x; ---> y = 15;
x ++; ---> x = 6;
while判断
++ x ---> x = 7;
--y ----> y = 14;
x < y;

第二次进入do:
y-=x; ---> y = 7;
x ++; ---> x = 8;
while判断
++x ---> x = 9;
--y ---> y = 6;
x >y;

程序结束。

您的采纳是我们前进的动力
-----能言善编团队追问

那你的意思是前面的X++会影响后面的++x,x从前面的6变成后面的7??是吗?

追答

是的。

本回答被提问者和网友采纳
相似回答