启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第27天,点击查看活动详情
和其他语言一样,C++的代码是从左到右从上到下执行的,但是也有条件语句,循环语句,来满足编程过程当中的需求,那么我们int来聊聊C++的if判断吧。
if判断是判断一个条件是否为真(返回true就是真),如果为真就执行下面的语句块,以年龄判断为例子:
#include <iostream>
using namespace std;
int main(){
int age = 0;
cin >> age;
if(age > 18){
cout << "你已经成年了" << endl;
}else if(age > 14){
cout << "你可以骑自行车了" << endl;
}
else{
cout << "你还未成年了" << endl;
}
return 0;
}
整个if判断可以分成三部分看:
if(判断条件){语句块1} 为第一个部分,代表一个判断的分支,这个部分是判断的开始,
else if(判断条件){语句块2} 为第二部分,在第一个分支条件不满足的前提下进行判断,如果满足就执行,并且结束整个判断,如果没有满足可以往下进行判断。
else{语句块3} 为第三部分,代表上面条件都没有满足才执行else部分的语句。
基本概念的基础上我们来聊聊需要注意的点:
1、if 判断必须要由if语句开头。
2、else if语句可以不写,也可以写多个,所以if判断可以是一个分支也可以是多个分支。
3、else语句也是可以写,可以不写的,代表上面的所有条件都不成立才执行,所以不需要再描述条件了。
4、一个判断一次执行只会执行一个分支,任意分支满足条件之后就会停止执行,所以前面的判断范围要小于后面的判断范围,否则会导致后面的判断被覆盖,比如:
#include <iostream>
using namespace std;
int main(){
int age = 0;
cin >> age;
if(age > 14){
cout << "你可以骑自行车了" << endl;
}else if(age > 18){
cout << "你已经成年了" << endl;
}
else{
cout << "你还未成年了" << endl;
}
return 0;
}
这里例子当中,显然age>14的范围要大于age>18的范围,首先编译不会报错,但是即使输入19岁,也只能显示 “你可以骑自行车了”。
5、两个if和if 和 else if是不同的,两个if语句是要执行两次的,但是if,else if一次只会执行一个,在编写
的时候一定要注意。
6、if判断是可以嵌套的,嵌套判断条件可以理解为和外层条件并列的条件,比如:
#include <iostream>
#include <string>
using namespace std;
int main(){
int age = 0;
cout << "请输入年龄" << endl;
cin >> age;
cout << "请输入性别" << endl;
string gender;
cin >> gender;
if(age > 22){
if(gender == "男"){
// 这里指的是age大与22并且性别是男的情况
cout << "可以结婚啦" << endl;
}
}
return 0;
}
if判断就先聊这么多,最后还是请各位大佬多多指点呀。