为什么第一个if语句执行后不执行第二个if语句。if elseif 嵌套语句是怎么看的啊

 我来答
妖搦天
2021-03-19
知道答主
回答量:6
采纳率:0%
帮助的人:1218
展开全部
首先,这种题要知道答案很简单,自己把题目放到编译软件上运行一下就行,然后可以通过结果反推过程。
这道题我编译出来结果是2,以下是我的逻辑:
首先,要知道else配对的是哪个if,这个配对方法很简单,由于没加括号,直接往上行找离它最近的没配对的if就行。本题与else配对的是第二个if;
其次,由于没有加括号,第一个if只能控制下一行的语句,即第二个if;第一个if无效,所以程序判定下一行的第二个if无效,而再往下一行的语句又受第二个if控制,所以它受到连锁反应,间接被无效了。下面的else与第二个if配对,第二个if无效就是else配对对象无效,else自然就跟着无效了。那么c=2就没有受到任何改变,原样输出。
这道题,虽然没有加括号括住下面的内容,但是最后因为if的性质,产生了连环无效,实际上与加了括号的效果一样
这里引起迷惑的应该是与else配对的if被无效后,else的反应;尤其是本题有两个if,会让人想到配对了的if无效后,else还可能直接与另一个if形成配对关系。但是由实际编译的结果可知,else是从一而终的,它最开始配对的if无效,它也会直接跟着无效,不会与其他else配对。
百I度网友AQnlQ
2019-02-28 · TA获得超过143个赞
知道小有建树答主
回答量:188
采纳率:37%
帮助的人:13.6万
展开全部
程序中初始化a等于2,b等于-1,c等于2,因此第一个if语句的判断条件(a<b)不成立,即条件为“假”,因此程序跳转执行else中的操作,c值增1。所以c等于3。
只有在条件判断语句if的条件表达式为“真”的时候,程序才会执行if语句内的操作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式