请问一下“void main() {int t,a,b,c;a=1;b=2;c=2; while(a<b<c) {t=a;a=b;b=t;c--;} cout<<a<<b<<c;}
希望能够得到你的详细解答,具体的调用计算过程,为什么最后的输出结果会是120.如果能够得到你的帮助,感激不尽,谢谢...
希望能够得到你的详细解答,具体的调用计算过程,为什么最后的输出结果会是120.如果能够得到你的帮助,感激不尽,
谢谢 展开
谢谢 展开
5个回答
展开全部
首先你要搞明白a<b<c,它的意思不再是a小于b同时b小于c就成立。根据<的自左向右的结合性,
它和(a<b)<c的意义是一样,下面来分析一下(a<b)<c:
(a<b)这个式子只有两个结果,0或者1.当a小于b时,它的值为1,其他的情况都为0.
而c就接着和1或者0进行比较了。
然后开始计算过程的分析:
循环开始前:t未知,a=1,b=2,c=2。因为(a<b)的值为1,所以(a<b<c)的值为1,开始循环
第一次循环后:t=1,a=2,b=1,c=1。因为(a<b)的值为0,所以(a<b<c)的值为1,继续循环
第二次循环后:t=2,a=1,b=2,c=0。因为(a<b)的值为1,所以(a<b<c)的值为0,结束循环
所以a,b,c的值分别是1,2,0
如果关于(a<b<c)你的本意是a小于b同时b小于c就成立,你应该这么写((a<b) && (b<c))
希望能帮助你。。
它和(a<b)<c的意义是一样,下面来分析一下(a<b)<c:
(a<b)这个式子只有两个结果,0或者1.当a小于b时,它的值为1,其他的情况都为0.
而c就接着和1或者0进行比较了。
然后开始计算过程的分析:
循环开始前:t未知,a=1,b=2,c=2。因为(a<b)的值为1,所以(a<b<c)的值为1,开始循环
第一次循环后:t=1,a=2,b=1,c=1。因为(a<b)的值为0,所以(a<b<c)的值为1,继续循环
第二次循环后:t=2,a=1,b=2,c=0。因为(a<b)的值为1,所以(a<b<c)的值为0,结束循环
所以a,b,c的值分别是1,2,0
如果关于(a<b<c)你的本意是a小于b同时b小于c就成立,你应该这么写((a<b) && (b<c))
希望能帮助你。。
展开全部
初始时:a=1,b=2,c=2;
而a<b<c是先a和b相比,把比较结果TRUE或者FALSE也就是1和0再跟c比。
while(a<b<c)
第一次:a=1,b=2;满足a<b,结果为1,1比c的值2小,while值为1,进入循环,交换ab值,c减一,此时a=2,b=1,c=1;
第二次:a=2,b=1;不满足a<b,结果为0,0比c的值1小while值为1,进入循环,交换ab值,c减
一,此时a=1,b=2,c=0;
第三次:a=1,b=2;满足a<b,结果为1,1比c的值0大,while值为0,跳出循环,此时a=1,b=2,c=0;输出。
而a<b<c是先a和b相比,把比较结果TRUE或者FALSE也就是1和0再跟c比。
while(a<b<c)
第一次:a=1,b=2;满足a<b,结果为1,1比c的值2小,while值为1,进入循环,交换ab值,c减一,此时a=2,b=1,c=1;
第二次:a=2,b=1;不满足a<b,结果为0,0比c的值1小while值为1,进入循环,交换ab值,c减
一,此时a=1,b=2,c=0;
第三次:a=1,b=2;满足a<b,结果为1,1比c的值0大,while值为0,跳出循环,此时a=1,b=2,c=0;输出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void main()
{
int t,a,b,c;a=1;b=2;c=2; //定义 参数,全是整型类型的
while(a<b<c) //判断 只有满足a<b<c才会循环 否则跳出循环
{
t=a;a=b;b=t;c--;//a值赋给t ,b值赋给a,t值赋给b,c值减1
}
cout<<a<<b<<c;//打印a b c
}
a<b<c 判断方法 先判断 a<b 再判断 (a<b) <c
{
int t,a,b,c;a=1;b=2;c=2; //定义 参数,全是整型类型的
while(a<b<c) //判断 只有满足a<b<c才会循环 否则跳出循环
{
t=a;a=b;b=t;c--;//a值赋给t ,b值赋给a,t值赋给b,c值减1
}
cout<<a<<b<<c;//打印a b c
}
a<b<c 判断方法 先判断 a<b 再判断 (a<b) <c
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a<b true , a<b=1<c true, t=a=1, a=b=2, b=t=1, c=1
a<b false, a<b=0<c true, t=a=2. a=b=1. b=t=2, c=0
a<b true, a<b=1<c false
a<b false, a<b=0<c true, t=a=2. a=b=1. b=t=2, c=0
a<b true, a<b=1<c false
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上正解,丫的,刚才看错题目了,汗 ;
其实也就是认识清楚a<b<c这个限定条件
其实也就是认识清楚a<b<c这个限定条件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询