目录
1、三目运算符
2、if语句
3、switch语句
4、if、switch的区别
1、三目运算符
可以通过三目运算符进行一个简单的判断
语法:表达式1 ?表达式2 : 表达式3
//定义3个变量a、b、c,将a和b作比较,将变量大的值,赋值给c #includeusing namespace std; int main() { int a = 10; int b = 20; int c = 0; c = a > b ? a : b; cout << "c = " << c << endl; //如果三目运算符返回的是变量,还可以继续给变量进行赋值 (a > b ? a : b) = 100; cout << "a = " << endl; cout << "b = " << endl; system("pause"); return 0; }
需要注意的是,三目运算符的返回值,根据所写的代码发生改变。如果表达式2、3是变量则返回变量,是具体的数值,则返回具体的数值。
2、if语句
if语句是选择结构中的其中1种。
if语句有单行格式、多行格式和多条件执行语句,都是满足条件则执行相应的语句。
2.1单行格式
#includeusing namespace std; int main() { //单行格式if int temp = 0;//初始化一个温度变量为0 cout << "请输入今天的温度:" << endl; cin >> temp; cout << "今天的温度为:" << temp << "℃" << endl; if(temp >= 40) { cout << "红色高温预警" << endl; } system("pause"); return 0; }
2.2多行格式
#includeusing namespace std; int main() { //多行格式if(条件){满足条件执行的语句}else{} int temp = 0;//初始化一个温度变量为0 cout << "请输入今天的温度:" << endl; cin >> temp; cout << "今天的温度为:" << temp << "℃" << endl; if(temp >= 40) { cout << "红色高温预警" << endl; } else { cout << "温度正常" << endl; } system("pause"); return 0; }
2.3多条件if语句
#includeusing namespace std; int main() { //多条件if(){}else if(){}else{} int temp = 0;//初始化一个温度变量为0 cout << "请输入今天的温度:" << endl; cin >> temp; cout << "今天的温度为:" << temp << "℃" << endl; if(temp >= 40)//满足条件则执行下面的语句 { cout << "红色高温预警" << endl; } else if(temp >= 38 && temp < 40)//上面条件不满足则跳到这里,继续比较 { cout << "橙色高温预警" << endl; } else//条件都不满足,则执行这里面的语句 { cout << "温度正常" << endl; } system("pause"); return 0; }
3、switch语句
switch语句用来执行多条件分支语句。
语法:
switch(表达式)
{
case 结果1(上面表达式的结果): 执行语句; break;
case 结果2: 执行语句; break;
······
default: 执行语句; break;
}
举例:模拟掷骰子,点数为1点看电视,2点打游戏,3点出去玩,其余点数学习。
#includeusing namespace std; int main() { int num = 0; cout << "请输入您投掷的骰子点数: " << endl; cin >> num; cout << "您投掷的点数为:" << num << endl; switch(num) { case 1: cout << "你可以看电视!" << endl; break; case 2: cout << "你可以打游戏!" << endl; break; case 3: cout << "你可以出去玩!" << endl; break; default:cout << "你需要学习!" << endl; break; } system("pause"); return 0; }
在switch语句中,switch中的判断条件可以是变量也可以是常量。break,不能忘,如果在第一个case语句的后面忘了加break语句,那么break后面的语句都会执行一遍,就得不到我们想要的结果。
4、if、switch的区别
switch语句
第一点:判断的时候只能是整型或字符型,不可以是一个区间,而if语句就可以是一个区间,比如if(temp <= 40 && temp >= 38),但switch不行;
第二点:结构清晰,执行效率高。不需要做那么多的判断,只需要看它的条件,满足哪个就执行相应的语句,而if语句,如果条件不满足会一直比较下去。
自学C++第四天,打卡完成,这些东西都是很基础的东西,掌握好这些,以后想提升才有基础。所有的语法,还是讲究一个多练多用,很多错误,要实践之后才知道,现在错得多,以后就错得少。
希望能有编程大佬推荐一些C++这方面的书,比较适合我这个初学者的,可以评论在下方哦!


