← 编程学习中心
📖

Preparation

8 个课程
1
如何学习编程
2
计算机基础
3
键盘初识与基准键位
4
字母与数字基础
5
Shift键魔法
6
编程符号专精
7
功能键与修饰键
8
键盘学习总结与进阶
📚

Basics

22 个课程
1
什么是编程?
2
Hello World - 你的第一个程序
3
变量基础概念 - 给信息贴标签
4
变量赋值和操作 - 变量的高级用法
5
数据类型基础 - 数字和字符串
6
基础运算符 - 数字运算王国
7
布尔类型与比较运算符 - 程序的判断基础
8
条件判断基础 - 让程序学会做决定
9
变量作用域 - 变量的生存范围
10
条件语句进阶 - 复杂判断与嵌套结构
11
逻辑运算符 - 简化复杂条件判断
12
循环语句 - 程序的重复机器
13
循环进阶 - break、continue与循环控制
14
嵌套循环与作用域
15
循环调试实战技巧
16
循环不变量 - 理解循环的数学规律
17
数组基础 - 数据的收纳盒
18
数组操作方法 - 添加、删除和管理
19
数组高级 - 探索数组的强大功能
20
引用概念 - 变量的不同行为
21
函数基础 - 解决重复代码的秘密武器
22
函数实践与应用 - 巩固基础,实战应用
🚀

Intermediate

11 个课程
1
从控制台到画布 - p5.js初体验
2
图形绘制工具箱 - 基础图形函数
3
让世界多彩 - 颜色系统详解
4
文字的艺术 - 文本绘制与样式
5
球体动起来 - 动画基础入门
6
球体的交互魔法 - 鼠标与条件判断
7
面向对象编程 - Class类与实例
8
球的家族 - 循环与数组应用
9
球的个性 - 函数封装与参数化
10
球的变身 - 形状模式与高级绘制
11
球的世界 - 综合创作项目
🎯

Advanced

6 个课程
1
对象类型
2
对象类型应用
3
自定义类型
4
函数进阶 - 箭头函数与高级编程技巧
5
内置方法 - 字符串与数组的魔法工具
6
Switch语句与字符串模板 - 更优雅的代码表达
← 编程学习中心
📖

Preparation

8 个课程
1
如何学习编程
2
计算机基础
3
键盘初识与基准键位
4
字母与数字基础
5
Shift键魔法
6
编程符号专精
7
功能键与修饰键
8
键盘学习总结与进阶
📚

Basics

22 个课程
1
什么是编程?
2
Hello World - 你的第一个程序
3
变量基础概念 - 给信息贴标签
4
变量赋值和操作 - 变量的高级用法
5
数据类型基础 - 数字和字符串
6
基础运算符 - 数字运算王国
7
布尔类型与比较运算符 - 程序的判断基础
8
条件判断基础 - 让程序学会做决定
9
变量作用域 - 变量的生存范围
10
条件语句进阶 - 复杂判断与嵌套结构
11
逻辑运算符 - 简化复杂条件判断
12
循环语句 - 程序的重复机器
13
循环进阶 - break、continue与循环控制
14
嵌套循环与作用域
15
循环调试实战技巧
16
循环不变量 - 理解循环的数学规律
17
数组基础 - 数据的收纳盒
18
数组操作方法 - 添加、删除和管理
19
数组高级 - 探索数组的强大功能
20
引用概念 - 变量的不同行为
21
函数基础 - 解决重复代码的秘密武器
22
函数实践与应用 - 巩固基础,实战应用
🚀

Intermediate

11 个课程
1
从控制台到画布 - p5.js初体验
2
图形绘制工具箱 - 基础图形函数
3
让世界多彩 - 颜色系统详解
4
文字的艺术 - 文本绘制与样式
5
球体动起来 - 动画基础入门
6
球体的交互魔法 - 鼠标与条件判断
7
面向对象编程 - Class类与实例
8
球的家族 - 循环与数组应用
9
球的个性 - 函数封装与参数化
10
球的变身 - 形状模式与高级绘制
11
球的世界 - 综合创作项目
🎯

Advanced

6 个课程
1
对象类型
2
对象类型应用
3
自定义类型
4
函数进阶 - 箭头函数与高级编程技巧
5
内置方法 - 字符串与数组的魔法工具
6
Switch语句与字符串模板 - 更优雅的代码表达

条件语句进阶 - 复杂判断与嵌套结构

在前面课程中,我们学习了布尔类型、比较运算符和基本的if语句。现在让我们学习如何使用更复杂的条件语句结构!

多种选择的条件语句

当情况比较复杂,有多个选择时,我们可以使用 if-else if-else 结构。

if-else if-else 语句的语法结构

if-else if-else 语句的基本结构如下:

if (条件1) {
  // 当条件1为 true 时执行的代码
} else if (条件2) {
  // 当条件1为 false 且条件2为 true 时执行的代码
} else if (条件3) {
  // 当条件1和条件2都为 false 且条件3为 true 时执行的代码
} else {
  // 当所有条件都为 false 时执行的代码
}

结构说明:

  • if:关键字(keyword),表示"如果"
  • else if:由两个关键字 else 和 if 组合而成,表示"否则如果"
  • else:关键字(keyword),表示"否则"(所有其他情况)
  • 执行逻辑:从上到下依次检查条件,遇到第一个 true 的条件就执行对应的代码,然后跳过后面的所有检查

完整示例:

加载代码编辑器...

执行顺序说明

重要特点:按顺序检查,遇到第一个真值就停止

让我们用上面的例子来说明执行顺序:

加载代码编辑器...

执行过程:

  1. 检查第一个条件:gameScore >= 1000

    • 750 >= 1000 → false
    • 继续检查下一个条件
  2. 检查第二个条件:gameScore >= 800

    • 750 >= 800 → false
    • 继续检查下一个条件
  3. 检查第三个条件:gameScore >= 600

    • 750 >= 600 → true
    • 执行:console.log("不错的成绩!获得 B 评级!")
    • 停止检查:不再检查后面的条件,直接结束

为什么后面的条件不会检查?

  • 因为程序已经找到了满足的条件(第三个条件)
  • 一旦执行了某个分支的代码,就会跳过整个 if-else if-else 结构
  • 所以 gameScore >= 400 和 else 都不会被检查

重要提醒:条件顺序很重要!

让我们用一个错误的例子来说明为什么条件顺序很重要:

加载代码编辑器...

为什么这是错误的?

当 gameScore = 850 时:

  1. 检查第一个条件:850 >= 400 → true
  2. 执行:"及格了!获得 C 评级!"
  3. 停止:不再检查后面的条件
  4. 问题:850分明明应该获得 A 评级,但因为第一个条件就匹配了,所以得到了错误的 C 评级!

正确的顺序(从大到小检查):

加载代码编辑器...

设计条件顺序的原则:

  • 从最严格的条件开始(比如:>= 1000)
  • 逐步放宽条件(比如:>= 800, >= 600, >= 400)
  • 最后处理其他情况(else)

这样就能确保每个分数都能得到最准确的评级!

嵌套条件语句 - 复杂的决策

什么是嵌套条件语句?

嵌套条件语句就是在 if 或 else 里面再写 if 或 else。就像俄罗斯套娃一样,大盒子里面套小盒子。

例子1:购买手机

想象你要买一部新手机,需要满足两个条件:

  • 要有足够的钱
  • 手机要是新款的
加载代码编辑器...

嵌套的逻辑:

  1. 外层:先检查第一个条件(有钱)
  2. 内层:只有有钱时才检查第二个条件(新款)
  3. 逐层执行:所有条件都要满足才能成功

例子2:出门准备

想象你要出门,但需要根据天气情况决定交通方式:

加载代码编辑器...

嵌套的逻辑:

  1. 外层:先检查主要条件(是否晴天)
  2. 内层:只有在不是晴天时才检查雨具

嵌套中的变量作用域实践

重要概念:代码块和作用域

关键规则:每一个 {} 都开始一个新的代码块(code block),定义在代码块里面的变量不能被外面使用。

这就是为什么我们说变量有自己的作用域(scope)——变量只能在定义它的代码块内被访问。

作用域的基本规则

  1. 内层可以访问外层的变量
  2. 外层不能访问内层的变量

让我们通过一个完整的例子来理解这个概念:

加载代码编辑器...

总结

今天我们学习了条件语句的进阶结构:

条件语句的完整结构

  1. if-else 结构:两种选择的条件判断,根据条件的真假执行不同代码
  2. if-else if-else 结构:多种选择的条件判断,注意条件顺序的重要性
  3. 嵌套条件语句:在条件语句中再写条件语句,处理复杂的多步决策

核心概念和技巧

  1. 条件顺序的重要性:

    • 从最严格的条件开始检查
    • 遇到第一个真值就停止后续检查
    • 避免条件顺序错误导致的逻辑问题
  2. 嵌套条件语句:

    • 处理复杂的多层决策逻辑
    • 内层可以访问外层变量,外层不能访问内层变量
    • 变量作用域的理解和应用

编程思维培养

  • 逻辑分层:学会将复杂问题分解为多个简单的判断
  • 条件设计:合理设计条件顺序,确保逻辑的正确性
  • 结构清晰:编写易读、易维护的条件语句结构

条件语句让程序变得"智能",能够根据不同情况做出合适的反应。掌握了这些进阶结构后,你可以创建复杂的条件判断逻辑,让程序处理各种不同的情况!现在你已经掌握了条件判断的核心技能,可以开始构建更复杂的程序逻辑了。

Previous lesson
Previous
变量作用域 - 变量的生存范围
Next
逻辑运算符 - 简化复杂条件判断
Next lesson