这个else if是跟哪个if成对组合的呢?为什么不会执行else if的语句呢?有没有else的区别,对程序影响的原理是什么?
int main(){
int a=-2,b=1,c=-2;
if(a>b)
if(b<0&&c<0)c=0;
else if(b>c)c=c+2;
cout<<c<<endl;
system("pause");
return 0;
}
结果:
去掉else之后:
int main(){
int a=-2,b=1,c=-2;
if(a>b)
if(b<0&&c<0)c=0;
if(b>c)c=c+2;
cout<<c<;
system("pause");
return 0;
}
结果:
第二种第三个if是独立的,肯定会执行到。第一种else if是相对于第二个if的,如果第二个if成立,else if就不会执行到