分析一下这个C语言小程序的运行结果

#include"stdio.h"voidmain(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);elseif((c-1>... #include "stdio.h"
void main()
{
int a=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
else if((c-1>=d)==1)
printf("%d\n",d+1);
else
printf("%d\n",d+2);
}
展开
 我来答
qjfcu2
2011-11-17 · TA获得超过591个赞
知道小有建树答主
回答量:554
采纳率:0%
帮助的人:394万
展开全部
输出 3
程序执行到
if(a>b>c) 时先判断a>b,结果为true,又因为c语言里true用1表示
所以if(a>b>c)就变成了if(1>c) 结果是false ,所以执行else if((c-1>=d)==1)
同样,当c-1>=d为true 所以c-1>=d就为1,1==1也为true
所以最后执行 printf("%d\n",d+1);
所以最后的结果为3
fan_frank904
2011-11-17 · TA获得超过154个赞
知道小有建树答主
回答量:161
采纳率:0%
帮助的人:152万
展开全部
printf("%d\n",d+1);
结果打印的是3
if(a>b>c):a>b成立,得到结果为1,1>c,不成立,所以整个表达式的结果为0;
else if((c-1>=d)==1):c-1==d,所以(c-1>=d)表达式的值为1,1==1,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淦海瑶s1
2011-11-17 · TA获得超过3646个赞
知道大有可为答主
回答量:3341
采纳率:100%
帮助的人:760万
展开全部
输出 printf("%d\n",d+1);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
庹慧智0k
2011-11-17 · TA获得超过331个赞
知道小有建树答主
回答量:598
采纳率:0%
帮助的人:133万
展开全部
结束是 3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式