我想实现这个if-then-else-if结构:
if ( a > b )
a = a - 1;
else if ( b >= c )
b = b − 2;
else if ( c > d)
c = c + d;
else
d = d / 2;
使用嵌套的if-then-if结构。我试过这段代码,但它没有给我与第一段代码相同的结果:
if ( c > d)
if ( b >= c)
if ( a > b)
a=a-1;
else
b=b-2;
else
c=c+d;
else
d=d/2;
答案 0 :(得分:1)
做
`if (a) if (b)`
相当于
`if (a && b)`
在你的情况下
if ( c > d)
if ( b >= c)
if ( a > b)
将是
if ( c > d && b >= c && a > b)
与初始代码完全不同。
答案 1 :(得分:0)
如果你真的想要这样的嵌套,你可以尝试
if (a <= b) {
if (b < c) {
if (c <= d) {
d = d / 2;
} else {
c = c + d;
}
} else {
b = b - 2;
}
} else {
a = a - 1;
}
但是else if
更容易阅读。