main() { int a=1,b=2,c=2,t; while(a<b<c) {t=a;a=b;b=t;c--;} printf("%d,%d,%d",a,b,c); }
5个回答
展开全部
注意循环条件:while(a<b<c)相当于while((a<b)<c)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-09-13
展开全部
相当于两次比较 先比较a<b,然后执行交换,c--;
然后在比较b<c;
然后在比较b<c;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先看a<b<c先算a<b 然后再把a<b的值在和c比较!!!
第一次循环a<b成立为1,然后1<c也成立,循环的条件成立 那么执行循环体后a=2,b=1,c=1;
第二次循环a<b不成立为0,然后0<c成立,循环的条件成立 那么执行循环体后a=1,b=2,c=0;
第三次循环a<b成立为1,然后1<c不成立,循环的条件不成立,退出循环,输出1 2 0
第一次循环a<b成立为1,然后1<c也成立,循环的条件成立 那么执行循环体后a=2,b=1,c=1;
第二次循环a<b不成立为0,然后0<c成立,循环的条件成立 那么执行循环体后a=1,b=2,c=0;
第三次循环a<b成立为1,然后1<c不成立,循环的条件不成立,退出循环,输出1 2 0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询