if...else 双分支 · if...else if 多分支 · switch 选择
让程序学会"做选择"的三种武器
Contents · 本课内容
从原理到实训,让你独立看懂、理解通透、会写会改代码
if 单分支、if...else 双分支、if...else if 多分支、switch 选择
输入数据实时查看分支走向,直观理解条件判断
判断成年人 · 成绩证书 · 奶茶付费
新建项目到运行调试,手把手实操
重点突破 · 01
程序根据条件"做选择",三条路走哪条?
核心概念 · 三种分支结构
三种分支结构各有适用场景,选对工具事半功倍
if (条件)
{
// 条件为真执行
}
else
{
// 条件为假执行
}
只有两条路:满足条件走 if,不满足走 else。适合"非此即彼"的判断。
if (条件1) { ... }
else if (条件2) { ... }
else if (条件3) { ... }
else { ... }
多条路:从上到下依次判断,匹配第一个满足的条件。适合"区间判断"。
switch(变量)
{
case 1: ...; break;
case 2: ...; break;
default: ...; break;
}
多选一:根据变量的值跳转到对应case。适合"等值匹配"场景,别忘了 break!
选哪个? 只有两个选择 → if...else;多个区间范围 → if...else if;多个离散值 → switch
交互演示 · if...else 双分支
输入年龄,实时查看条件判断走向
要点:if...else 只有一个条件判断点。条件为真走 if 分支,为假走 else 分支。18岁是分界线,>=18 和 <18 互斥,必走其一。
交互演示 · if...else if 多分支
输入成绩,实时查看条件链判断走向
要点:if...else if 从上到下依次判断,匹配第一个满足的条件后不再继续。顺序很重要:先判断大区间(>=90),再判断小区间(>=80),最后(>=60)。
交互演示 · switch 选择语句
选择杯型,实时查看 switch 匹配走向
要点:switch 根据 n 的值直接跳转到匹配的 case,不像 if 那样从上到下逐个判断。每个 case 后必须写 break 跳出。default 是所有 case 都不匹配时的兜底。
实训案例 · 【实训2-1】
输入年龄,判断是否已满18周岁
实训2-1 · 代码逐行分析
Convert.ToInt32(Console.ReadLine())
ReadLine读取字符串,Convert.ToInt32转为int类型。注意是ToInt32不是ToInt16。
if (age >= 18)
判断年龄是否大于等于18。>=是比较运算符,返回true或false。
true → 成年人 · false → 未成年人
条件为真走if块,为假走else块。两条路必走其一。
实训案例 · 【实训2-2】
输入成绩,根据分数发放对应证书
实训2-2 · 代码逐行分析
条件顺序至关重要! 必须从大到小判断(>=90 → >=80 → >=60)。如果反过来先判断>=60,那90分也会匹配>=60,永远拿不到优秀证书。因为 if...else if 匹配第一个满足的条件后就停止。
实训案例 · 【实训2-3】
选择杯型,根据选择提示付费信息
实训2-3 · 代码逐行分析
switch(n) { case 1: ... }
n是选择变量。switch将n的值与每个case后面的值比较,匹配则执行对应代码。
case 1: ...; break;
每个case后面必须写break跳出switch。不写会继续执行下一个case(case穿透)。
default: ...; break;
所有case都不匹配时执行default。这里是默认中杯¥4.0。
示范操作 · VS2010 新建项目
三个实训通用步骤,手把手实操
双击桌面图标或从开始菜单启动 Microsoft Visual Studio 2010。启动
选择菜单项"文件" → "新建" → "项目",打开"新建项目"对话框。文件 → 新建 → 项目
在左侧选择"Visual C#" → "Windows",在模板列表中选择"控制台应用程序"。在下方"名称"框中输入项目名(如 Test2_1),点击"确定"。控制台应用程序
系统自动生成代码框架,在 static void Main(string[] args) 代码段中输入相应代码。Main 方法
按 F5 或点击工具栏绿色▶按钮运行程序。在控制台窗口中输入测试数据,查看运行结果。F5 运行
Summary · 核心要点总结
从原理到实训,截图保存随时复习
if...else 双分支(非此即彼)、if...else if 多分支(区间判断)、switch 选择(等值匹配)
if...else if 从上到下依次判断,匹配第一个满足的条件后停止。区间判断必须从大到小排列
case 匹配值 → break 跳出 → default 兜底。忘记 break 会导致 case 穿透
Convert.ToInt32(Console.ReadLine()) 或 int.Parse(s) 将字符串转为整数用于条件判断
两个选择 → if...else · 多个区间范围 → if...else if · 多个离散值 → switch。选对工具事半功倍!
感谢学习
从判断成年人到奶茶付费,分支结构的三种武器你已全部掌握