C语言中关于两个if连用怎么理解

{inta=2,b=3,c=1;if(a>b)if(a>c)printf("%d\n",a);elseprintf("%d\n",b);printf("over!\n")... {
int a=2,b=3,c=1;
if(a>b)
if(a>c)
printf("%d\n",a);
else
printf("%d\n",b);
printf("over!\n");
}
以上程序结果是什么?
该如何理解第一个if在程序中的意义
展开
 我来答
百度网友f84151b
推荐于2017-10-04 · TA获得超过168个赞
知道答主
回答量:42
采纳率:0%
帮助的人:33万
展开全部
{
int a=2,b=3,c=1;
if(a>b)

{if(a>c)
printf("%d\n",a);
else
printf("%d\n",b);
}
printf("over!\n");
}

明白了吧!第一次判断a>b为假直接就不执行下一个if,最后的结果就是over!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wgyygw5
2010-07-14 · TA获得超过3288个赞
知道小有建树答主
回答量:994
采纳率:100%
帮助的人:1216万
展开全部
c语言中else是和它最近的前一个if配对,所以这个程序相当于
int a=2,b=3,c=1;
if(a>b)
{
if(a>c)
{
printf("%d\n",a);
}
else
{
printf("%d\n",b);
}
}
printf("over!\n");

由于a<b所以没有进入if判断
所以结果是 over

第一个if就是包括了后面的if else在内的一个大if
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友629c242
2010-07-14 · TA获得超过108个赞
知道答主
回答量:150
采纳率:0%
帮助的人:112万
展开全部
典型的if嵌套,记住else是和它最近的if配对
条件触发是首先必须a>b,然后才会判断a>c,如果是printf("%d\n",a),如果a<=c, printf("%d\n",b);
不管a和b的大小关系,肯定执行printf("over!\n");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迷琐不回俗电1e
2018-12-03
知道答主
回答量:12
采纳率:0%
帮助的人:7102
展开全部

C语言编程知识第八节--C语言中的if条件语句

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
stenger
2010-07-14 · TA获得超过726个赞
知道小有建树答主
回答量:1577
采纳率:0%
帮助的人:1406万
展开全部
不就是比较那个数大吗? 简单的嵌套if呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式