再次说明,本专栏文章采用最少必要知识原则,只讲解必要知识,让青少年,先上手编程,再上道。
文章采用更简单易懂的文字,不涉及很多的专有名词,部分举例有失精准。一切为了开始入门编程。
请先复习上文 - 重点回顾 - 部分内容。
多分支 if … else if … else
多分支语句,是对同一个条件表达式的的不同结果,分别执行不同的代码块。({ }
括起来的就是代码块)
举例:判断一个整数,是正数、负数、还是 0。判定整数和 0 的关系
- 若是大于 0,输出 positive
- 若是小于 0,输出 negative
- 若是等于 0,输出 zero
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
if(n > 0) {
cout << "positive" << endl;
} else if(n < 0) {
cout << "negative" << endl;
} else if(n == 0) {
cout << "zero" << endl;
}
return 0;
}
其中,最后一个 else if(n == 0)
,可直接写成 else
,这没有任何问题,但不建议,我一般写成 else if(n == 0)
,可读性会更加好。else
最好只单独和 if
使用,也就是双分支 if ... else ...
。
任务1:请有感情的完成上述程序,好好体会
else if
。→
if ... else if ... else if ...
多分支语句,理解很容易,但更多的是练习。练习中的体悟很重要。加油 ~
分支嵌套语句
如题,就是if
语句里,套另一个 if
语句。形式如下:
尽量别嵌套,实在要嵌套,别超过三层。
if(statement1) {
if(statement2) {
if(statement3)
/* coude here */
}
}
实际使用较少,大家知道这回事就行,练习时,用到再说,纯粹学,无意义,徒增烦恼和不会。
switch 语句
switch
语句,几乎仅有两个场景会用到,一是:多分支 if ... else if ... else if ...
,其条件表达式是和某些具体数值判等时,使用 switch
,代码稍加易读;二是:炫技-展现奇技淫巧的时候,比如 case
贯穿问题,比如明明是范围判断的问题,非要整理成,单个数值判断的问题,就是为了搞你。
但还是需要了解的,来看 switch
代码模板 ,除了 /* code here */
,其余部分,固定格式。
switch(变量名) {
case 变量可能的值1:
/* code here */
break; // 处理完成,结束 switch
case 变量可能的值2:
/* code here */
break; // 处理完成,结束 switch
case 变量可能的值3:
/* code here */
break; // 处理完成,结束 switch
default: // 当变量值,不在上述的 case 中
/* code here */
break; // 处理完成,结束 switch
}
再来看一个案例:按照成绩级别,输出对应分数区间:
- 若输入 A,输出 [90, 100]
- 若输入 B,输出 [80, 89]
- 若输入 C,输出 [60, 79]
- 若输入 D,输出 [0, 60]
// 多分支 if...else if...else if..