【Rust入门知识点学与练】第4课:条件判断 if / else

知识点:if、else if、else

rust 复制代码
fn main() {
    let score = 85;

    if score >= 90 {
        println!("优秀");
    } else if score >= 60 {
        println!("及格");
    } else {
        println!("不及格");
    }

    // if 是表达式,可以返回值
    let level = if score >= 60 { "通过" } else { "未通过" };
    println!("考试结果: {}", level);
}

核心规则

规则 说明

条件不用加括号 if x > 0 而不是 if (x > 0)

花括号必须加 不能像其他语言省略 {}

if 可以返回值 最后一个表达式不加 ; 就是返回值

动手试试

补全下面的代码:

复制代码
fn main() {
    let temperature = 35;

    // 补全:根据温度打印不同提示
    // >= 35  → "🔥 高温警告"
    // >= 25  → "☀️ 天气不错"
    // >= 10  → "🍂 有点凉"
    // < 10   → "❄️ 注意保暖"

    // 补全:用 if 表达式给 clothes 赋值
    // >= 25  → "短袖"
    // < 25   → "外套"
    // 然后打印 "建议穿: {clothes}"
}

期望输出:

🔥 高温警告

建议穿: 短袖

写好了贴过来,没问题就进入第5课:函数 👋

贴代码

复制代码
fn main() {
    let temperature = 35;

    // 补全:根据温度打印不同提示
    // >= 35  → "🔥 高温警告"
    // >= 25  → "☀️ 天气不错"
    // >= 10  → "🍂 有点凉"
    // < 10   → "❄️ 注意保暖"
    if temperature >= 35 {
        println!("🔥 高温警告");
    } else if temperature >= 25 {
        println!("☀️ 天气不错");
    } else if temperature >= 10 {
        println!("🍂 有点凉");
    } else {
        println!("❄️ 注意保暖");
    }

    // 补全:用 if 表达式给 clothes 赋值
    // >= 25  → "短袖"
    // < 25   → "外套"
    // 然后打印 "建议穿: {clothes}"
    let clothes = if temperature >= 25 {
        "短袖"
    } else {
        "外套"
    };
    println!("建议穿: {}", clothes);
}

评语

完全正确!👏

你掌握了:

if / else if / else 条件判断

条件不用加括号,花括号必须加

if 作为表达式返回值(最后一个表达式不加 ; )

重点知识点

  1. if‑else if‑else 顺序很重要:条件要从高到低写,先判断更大的值,否则会匹配错误。
  2. Rust 中 if 是表达式,可以直接赋值给变量,每个分支返回的值类型必须一样。
  3. 分支里返回字符串字面量 &str ,两个分支都返回字符串,类型一致才可以编译。

小练习:

你可以修改 temperature 的值为 20 、 5 ,看看输出会不会变化。

相关推荐
学逆向的10 分钟前
C 循环结构的执行效率分析
c语言·开发语言·数据结构·网络安全
Flynt14 分钟前
我把真实的 ES 查询怼到 7059 星的 Rust 搜索引擎上:1366/1369 的兼容承诺,裂了 3 个缝
elasticsearch·搜索引擎·rust
小坏讲微服务32 分钟前
刚发布一个月的JDK 27,为什么我建议你立刻升级?
java·开发语言·spring boot·spring·架构·求职招聘·springboot4
我命由我123451 小时前
智能助手通用问答边界
人工智能·python·学习·ai·学习方法·ai编程·智能体
鬼手点金1 小时前
Agent 的学习机制:后训练、上下文学习与外部化学习
java·人工智能·git·学习·自动化·nanogpt
几个几个n2 小时前
LaTeX 入门学习
学习
打工仔折腾 AI2 小时前
用 Dashlet 把极空间 NAS 服务入口整理成统一导航首页的实践
java·开发语言·人工智能·后端·python·rpc·ai agent 实战
MATLAB代码顾问2 小时前
Simulink PI 参数扫描与批量仿真完整 MATLAB 代码
开发语言·matlab
Want5953 小时前
Python跳动的爱心②
开发语言·python·数学建模
小杍随笔3 小时前
egui 0.37 升级实录:卡顿修复与5倍性能回退
windows·rust·egui