在C++中if和else除了可以一次性只用一套,还可以多个配合起来,联合使用,如下:
#include <iostream>
using namespace std;
int main(){
int a = 1, b = 2;
if (a > b){
cout << "a > b" << endl;
}
else if (a == b){
cout << "a = b" << endl;
}
else if (a < b){
cout << "a < b" << endl;
}
return 0;
}
注:部分读者可能会对"=="产生疑惑,之前有介绍过"="的作用是将变量赋值,因此,"=="就用于代替原本"="的意思,即判断是否相等。
如上,在执行条件判断时,通过条件1判断a>b是否成立,若是成立,则会执行if的大括号下所有的语句,然后退出,并不会判断执行其余的else if后的所有语句,如:
#include <iostream>
using namespace std;
int main(){
int a = 1, b = 2;
int c = 0;
if (a <= b){
c = c + 1;
}
else if (a < b){
c = c + 1;
}
else if (a > b){
c = c + 1;
}
cout << c << endl;
return 0;
}
如上,在第一个if判断中,会先判断a<=b是否成立,若成立则执行第一个if里面的语句,然后跳出所有的连续else if语句,因此,在上面代码中c=c+1只会执行一次,即c的大小只会加1
若是在单纯的if语句中,则会将所有的if后面的判断条件都进行判断,依次确定是否执行该if中的包含的语句
#include <iostream>
using namespace std;
int main(){
int a = 1, b = 2;
int c = 0;
if (a <= b){
c = c + 1;
}
if (a < b){
c = c + 1;
}
if (a > b){
c = c + 1;
}
cout << c << endl;
return 0;
}
由此可见,if和else if的区别,至于具体原理,不做过多赘述,读者可自行依据if else搭配的特型进行思考,也可先暂时记住其区别,然后再在后期的编程中逐渐理解