if与else的匹配机制

条件语句IF和ELSE

众所周知条件语句if和else是比较简单的,但是往往有些题目会让人很揪心。下面我们就针对下面代码进行分析:
代码如下
int a = 1, b = 3, c = 5, d = 4, x;
if (a < b)
if (c<d)
x = 1;
else
if (a<c)
if (b<d)
x = 2;
else
x = 3;
else
x = 6;
else
x = 3;
下面插入图片观看我们的代码:
在这里插入图片描述
对于else搭配哪个if是不是感觉很头疼,根据我们所学else往往是和其最近的if搭配,所以看下图,是不是就可以明白了呢!程序中往往都是if数目多于else。话不多说看客老爷们请看图:
在这里插入图片描述
从上往下看a<b成立,最底下else x=3不执行;继续往下c<d不成立,进入③;继续往下a<c成立,继续执行下面语句,b<d成立最终x=2;输出X,最终结果为 2。
如果改变a的值,假设a=4,那么结果应该为3。改变a的值,运行查看如下图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_39161836/article/details/113486523